home *** CD-ROM | disk | FTP | other *** search
Wrap
Text File | 1998-05-21 | 1.3 MB | 29,935 lines
Text Truncated. Only the first 1MB is shown below. Download the file for the complete contents.
Fexpand-abbrev Expand the abbrev before point, if any. Effective when explicitly called even when `abbrev-mode' is nil. Returns t if expansion took place. arguments: () Vglobal-abbrev-table The abbrev table whose abbrevs affect all buffers. Each buffer may also have a local abbrev table. If it does, the local table overrides the global one for any particular abbrev defined in both.Vlast-abbrev The abbrev-symbol of the last abbrev expanded. See the function `abbrev-symbol'.Vlast-abbrev-text The exact text of the last abbrev expanded. nil if the abbrev has already been unexpanded.Vlast-abbrev-location The location of the start of the last abbrev expanded.Vabbrev-start-location Buffer position for `expand-abbrev' to use as the start of the abbrev. nil means use the word before point as the abbrev. Calling `expand-abbrev' sets this to nil.Vabbrev-start-location-buffer Buffer that `abbrev-start-location' has been set for. Trying to expand an abbrev in any other buffer clears `abbrev-start-location'.Vabbrev-all-caps *Non-nil means expand multi-word abbrevs all caps if abbrev was so.Vpre-abbrev-expand-hook Function or functions to be called before abbrev expansion is done. This is the first thing that `expand-abbrev' does, and so this may change the current abbrev table before abbrev lookup happens.Fcons Create a new cons, give it CAR and CDR as components, and return it. arguments: (CAR CDR) Flist Return a newly created list with specified arguments as elements. Any number of arguments, even zero arguments, are allowed.Fmake-list Return a newly created list of length LENGTH, with each element being INIT. arguments: (LENGTH INIT) Fmake-vector Return a newly created vector of length LENGTH, with each element being INIT. See also the function `vector'. arguments: (LENGTH INIT) Fvector Return a newly created vector with specified arguments as elements. Any number of arguments, even zero arguments, are allowed.Fmake-bit-vector Return a newly created bit vector of length LENGTH. Each element is set to INIT. See also the function `bit-vector'. arguments: (LENGTH INIT) Fbit-vector Return a newly created bit vector with specified arguments as elements. Any number of arguments, even zero arguments, are allowed.Fmake-byte-code Create a compiled-function object. Usage: (arglist instructions constants stack-size &optional doc-string interactive-spec) Note that, unlike all other emacs-lisp functions, calling this with five arguments is NOT the same as calling it with six arguments, the last of which is nil. If the INTERACTIVE arg is specified as nil, then that means that this function was defined with `(interactive)'. If the arg is not specified, then that means the function is not interactive. This is terrible behavior which is retained for compatibility with old `.elc' files which expected these semantics.Fmake-symbol Return a newly allocated uninterned symbol whose name is NAME. Its value and function definition are void, and its property list is nil. arguments: (STR) Fmake-marker Return a newly allocated marker which does not point at any place. arguments: () Fmake-string Return a newly created string of length LENGTH, with each element being INIT. LENGTH must be an integer and INIT must be a character. arguments: (LENGTH INIT) Fpurecopy Make a copy of OBJECT in pure storage. Recursively copies contents of vectors and cons cells. Does not copy symbols. arguments: (OBJ) Fgarbage-collect Reclaim storage for Lisp objects no longer needed. Returns info on amount of space in use: ((USED-CONSES . FREE-CONSES) (USED-SYMS . FREE-SYMS) (USED-MARKERS . FREE-MARKERS) USED-STRING-CHARS USED-VECTOR-SLOTS PLIST) where `PLIST' is a list of alternating keyword/value pairs providing more detailed information. Garbage collection happens automatically if you cons more than `gc-cons-threshold' bytes of Lisp data since previous garbage collection. arguments: () Fconsing-since-gc Return the number of bytes consed since the last garbage collection. "Consed" is a misnomer in that this actually counts allocation of all different kinds of objects, not just conses. If this value exceeds `gc-cons-threshold', a garbage collection happens. arguments: () Fmemory-limit Return the address of the last byte Emacs has allocated, divided by 1024. This may be helpful in debugging Emacs's memory usage. The value is divided by 1024 to make sure it will fit in a lisp integer. arguments: () Vgc-cons-threshold *Number of bytes of consing between garbage collections. "Consing" is a misnomer in that this actually counts allocation of all different kinds of objects, not just conses. Garbage collection can happen automatically once this many bytes have been allocated since the last garbage collection. All data types count. Garbage collection happens automatically when `eval' or `funcall' are called. (Note that `funcall' is called implicitly as part of evaluation.) By binding this temporarily to a large number, you can effectively prevent garbage collection during a part of the program. See also `consing-since-gc'.Vpure-bytes-used Number of bytes of sharable Lisp data allocated so far.Vdata-bytes-used Number of bytes of unshared memory allocated in this session.Vdata-bytes-free Number of bytes of unshared memory remaining available in this session.Vdebug-allocation If non-zero, print out information to stderr about all objects allocated. See also `debug-allocation-backtrace-length'.Vdebug-allocation-backtrace-length Length (in stack frames) of short backtrace printed out by `debug-allocation'.Vpurify-flag Non-nil means loading Lisp code in order to dump an executable. This means that certain objects should be allocated in shared (pure) space.Vpre-gc-hook Function or functions to be run just before each garbage collection. Interrupts, garbage collection, and errors are inhibited while this hook runs, so be extremely careful in what you add here. In particular, avoid consing, and do not interact with the user.Vpost-gc-hook Function or functions to be run just after each garbage collection. Interrupts, garbage collection, and errors are inhibited while this hook runs, so be extremely careful in what you add here. In particular, avoid consing, and do not interact with the user.Vgc-message String to print to indicate that a garbage collection is in progress. This is printed in the echo area. If the selected frame is on a window system and `gc-pointer-glyph' specifies a value (i.e. a pointer image instance) in the domain of the selected frame, the mouse pointer will change instead of this message being printed.Vgc-pointer-glyph Pointer glyph used to indicate that a garbage collection is in progress. If the selected window is on a window system and this glyph specifies a value (i.e. a pointer image instance) in the domain of the selected window, the pointer will be changed as specified during garbage collection. Otherwise, a message will be printed in the echo area, as controlled by `gc-message'.Fbufferp T if OBJECT is an editor buffer. arguments: (OBJECT) Fbuffer-live-p T if OBJECT is an editor buffer that has not been deleted. arguments: (OBJECT) Fbuffer-list Return a list of all existing live buffers. The order is specific to the selected frame; if the optional FRAME argument is provided, the ordering for that frame is returned instead. If the FRAME argument is t, then the global (non-frame) ordering is returned instead. arguments: (&optional FRAME) Fdecode-buffer Validate BUFFER or if BUFFER is nil, return the current buffer. If BUFFER is a valid buffer or a string representing a valid buffer, the corresponding buffer object will be returned. Otherwise an error will be signaled. arguments: (BUFFER) Fget-buffer Return the buffer named NAME (a string). If there is no live buffer named NAME, return nil. NAME may also be a buffer; if so, the value is that buffer. arguments: (NAME) Fget-file-buffer Return the buffer visiting file FILENAME (a string). The buffer's `buffer-file-name' must match exactly the expansion of FILENAME. If there is no such live buffer, return nil. Normally, the comparison is done by canonicalizing FILENAME (using `expand-file-name') and comparing that to the value of `buffer-file-name' for each existing buffer. However, If `find-file-compare-truenames' is non-nil, FILENAME will be converted to its truename and the search will be done on each buffer's value of `buffer-file-truename' instead of `buffer-file-name'. Otherwise, if `find-file-use-truenames' is non-nil, FILENAME will be converted to its truename and used for searching, but the search will still be done on `buffer-file-name'. arguments: (FILENAME) Fget-buffer-create Return the buffer named NAME, or create such a buffer and return it. A new buffer is created if there is no live buffer named NAME. If NAME starts with a space, the new buffer does not keep undo information. If NAME is a buffer instead of a string, then it is the value returned. The value is never nil. arguments: (NAME) Fmake-indirect-buffer Create and return an indirect buffer for buffer BASE, named NAME. BASE should be an existing buffer (or buffer name). NAME should be a string which is not the name of an existing buffer. If BASE is an indirect buffer itself, the base buffer for that buffer is made the base buffer for the newly created buffer. (Thus, there will never be indirect buffers whose base buffers are themselves indirect.) arguments: (BASE-BUFFER NAME) Fgenerate-new-buffer-name Return a string that is the name of no existing buffer based on NAME. If there is no live buffer named NAME, then return NAME. Otherwise modify name by appending `<NUMBER>', incrementing NUMBER until an unused name is found, and then return that name. Optional second argument IGNORE specifies a name that is okay to use (if it is in the sequence to be tried) even if a buffer with that name exists. arguments: (NAME &optional IGNORE) Fbuffer-name Return the name of BUFFER, as a string. With no argument or nil as argument, return the name of the current buffer. arguments: (&optional BUFFER) Fbuffer-file-name Return name of file BUFFER is visiting, or nil if none. No argument or nil as argument means use the current buffer. arguments: (&optional BUFFER) Fbuffer-base-buffer Return the base buffer of indirect buffer BUFFER. If BUFFER is not indirect, return nil. arguments: (&optional BUFFER) Fbuffer-indirect-children Return a list of all indirect buffers whose base buffer is BUFFER. If BUFFER is indirect, the return value will always be nil; see `make-indirect-buffer'. arguments: (&optional BUFFER) Fbuffer-local-variables Return an alist of variables that are buffer-local in BUFFER. Most elements look like (SYMBOL . VALUE), describing one variable. For a symbol that is locally unbound, just the symbol appears in the value. Note that storing new VALUEs in these elements doesn't change the variables. No argument or nil as argument means use current buffer as BUFFER. arguments: (&optional BUFFER) Fbuffer-dedicated-frame Return the frame dedicated to this BUFFER, or nil if there is none. No argument or nil as argument means use current buffer as BUFFER. arguments: (&optional BUFFER) Fset-buffer-dedicated-frame For this BUFFER, set the FRAME dedicated to it. FRAME must be a frame or nil. arguments: (BUFFER FRAME) Fbuffer-modified-p Return t if BUFFER was modified since its file was last read or saved. No argument or nil as argument means use current buffer as BUFFER. arguments: (&optional BUFFER) Fset-buffer-modified-p Mark BUFFER as modified or unmodified according to FLAG. A non-nil FLAG means mark the buffer modified. No argument or nil as BUFFER means use current buffer. arguments: (FLAG &optional BUFFER) Fbuffer-modified-tick Return BUFFER's tick counter, incremented for each change in text. Each buffer has a tick counter which is incremented each time the text in that buffer is changed. It wraps around occasionally. No argument or nil as argument means use current buffer as BUFFER. arguments: (&optional BUFFER) Frename-buffer Change current buffer's name to NEWNAME (a string). If second arg UNIQUE is nil or omitted, it is an error if a buffer named NEWNAME already exists. If UNIQUE is non-nil, come up with a new name using `generate-new-buffer-name'. Interactively, one can set UNIQUE with a prefix argument. Returns the name we actually gave the buffer. This does not change the name of the visited file (if any). arguments: (NEWNAME &optional UNIQUE) Fother-buffer Return most recently selected buffer other than BUFFER. Buffers not visible in windows are preferred to visible buffers, unless optional third argument VISIBLE-OK is non-nil. If no other buffer exists, the buffer `*scratch*' is returned. If BUFFER is omitted or nil, some interesting buffer is returned. The ordering is for this frame; If second optional argument FRAME is provided, then the ordering is for that frame. If the second arg is t, then the global ordering is returned. Note: In FSF Emacs, this function takes two arguments: BUFFER and VISIBLE-OK. arguments: (&optional BUFFER FRAME VISIBLE-OK) Fbuffer-disable-undo Make BUFFER stop keeping undo information. Any undo records it already has are discarded. No argument or nil as argument means do this for the current buffer. arguments: (&optional BUFFER) Fbuffer-enable-undo Start keeping undo information for buffer BUFFER. No argument or nil as argument means do this for the current buffer. arguments: (&optional BUFFER) Fkill-buffer Kill the buffer BUFNAME. The argument may be a buffer or may be the name of a buffer. An argument of nil means kill the current buffer. Value is t if the buffer is actually killed, nil if user says no. The value of `kill-buffer-hook' (which may be local to that buffer), if not void, is a list of functions to be called, with no arguments, before the buffer is actually killed. The buffer to be killed is current when the hook functions are called. Any processes that have this buffer as the `process-buffer' are killed with `delete-process'. arguments: (BUFNAME) Frecord-buffer Place buffer BUF first in the buffer order. Call this function when a buffer is selected "visibly". This function changes the global buffer order and the per-frame buffer order for the selected frame. The buffer order keeps track of recency of selection so that `other-buffer' will return a recently selected buffer. See `other-buffer' for more information. arguments: (BUF) Fset-buffer-major-mode Set an appropriate major mode for BUFFER, according to `default-major-mode'. Use this function before selecting the buffer, since it may need to inspect the current buffer's major mode. arguments: (BUF) Fcurrent-buffer Return the current buffer as a Lisp object. arguments: () Fset-buffer Make the buffer BUFNAME current for editing operations. BUFNAME may be a buffer or the name of an existing buffer. See also `save-excursion' when you want to make a buffer current temporarily. This function does not display the buffer, so its effect ends when the current command terminates. Use `switch-to-buffer' or `pop-to-buffer' to switch buffers permanently. arguments: (BUFNAME) Fbarf-if-buffer-read-only Signal a `buffer-read-only' error if the buffer is read-only. Optional argument BUFFER defaults to the current buffer. If optional argument START is non-nil, all extents in the buffer which overlap that part of the buffer are checked to ensure none has a `read-only' property. (Extents that lie completely within the range, however, are not checked.) END defaults to the value of START. If START and END are equal, the range checked is [START, END] (i.e. closed on both ends); otherwise, the range checked is (START, END) (open on both ends), except that extents that lie completely within [START, END] are not checked. See `extent-in-region-p' for a fuller discussion. arguments: (&optional BUFFER START END) Fbury-buffer Put BUFFER at the end of the list of all buffers. There it is the least likely candidate for `other-buffer' to return; thus, the least likely buffer for \[switch-to-buffer] to select by default. If BUFFER is nil or omitted, bury the current buffer. Also, if BUFFER is nil or omitted, remove the current buffer from the selected window if it is displayed there. If BEFORE is non-nil, it specifies a buffer before which BUFFER will be placed, instead of being placed at the end. arguments: (&optional BUFFER BEFORE) Ferase-buffer Delete the entire contents of the BUFFER. Any clipping restriction in effect (see `narrow-to-region') is removed, so the buffer is truly empty after this. BUFFER defaults to the current buffer if omitted. arguments: (&optional BUFFER) Fkill-all-local-variables Switch to Fundamental mode by killing current buffer's local variables. Most local variable bindings are eliminated so that the default values become effective once more. Also, the syntax table is set from `standard-syntax-table', the category table is set from `standard-category-table' (if support for Mule exists), local keymap is set to nil, the abbrev table is set from `fundamental-mode-abbrev-table', and all specifier specifications whose locale is the current buffer are removed. This function also forces redisplay of the modeline. Every function to select a new major mode starts by calling this function. As a special exception, local variables whose names have a non-nil `permanent-local' property are not eliminated by this function. The first thing this function does is run the normal hook `change-major-mode-hook'. arguments: () Fbuffer-memory-usage Return stats about the memory usage of buffer BUFFER. The values returned are in the form an alist of usage types and byte counts. The byte counts attempt to encompass all the memory used by the buffer (separate from the memory logically associated with a buffer or frame), including internal structures and any malloc() overhead associated with them. In practice, the byte counts are underestimated because certain memory usage is very hard to determine (e.g. the amount of memory used inside the Xt library or inside the X server) and because there is other stuff that might logically be associated with a window, buffer, or frame (e.g. window configurations, glyphs) but should not obviously be included in the usage counts. Multiple slices of the total memory usage may be returned, separated by a nil. Each slice represents a particular view of the memory, a particular way of partitioning it into groups. Within a slice, there is no overlap between the groups of memory, and each slice collectively represents all the memory concerned. arguments: (BUFFER) Vchange-major-mode-hook List of hooks to be run before killing local variables in a buffer. This should be used by any mode that temporarily alters the contents or the read-only state of the buffer. See also `kill-all-local-variables'.Vfind-file-compare-truenames If this is true, then the find-file command will check the truenames of all visited files when deciding whether a given file is already in a buffer, instead of just the buffer-file-name. This means that if you attempt to visit another file which is a symbolic-link to a file which is already in a buffer, the existing buffer will be found instead of a newly- created one. This works if any component of the pathname (including a non- terminal component) is a symbolic link as well, but doesn't work with hard links (nothing does). See also the variable find-file-use-truenames.Vfind-file-use-truenames If this is true, then a buffer's visited file-name will always be chased back to the real file; it will never be a symbolic link, and there will never be a symbolic link anywhere in its directory path. That is, the buffer-file-name and buffer-file-truename will be equal. This doesn't work with hard links. See also the variable find-file-compare-truenames.Vbefore-change-functions List of functions to call before each text change. Two arguments are passed to each function: the positions of the beginning and end of the range of old text to be changed. (For an insertion, the beginning and end are at the same place.) No information is given about the length of the text after the change. Buffer changes made while executing the `before-change-functions' don't call any before-change or after-change functions.Vafter-change-functions List of functions to call after each text change. Three arguments are passed to each function: the positions of the beginning and end of the range of changed text, and the length of the pre-change text replaced by that range. (For an insertion, the pre-change length is zero; for a deletion, that length is the number of characters deleted, and the post-change beginning and end are at the same place.) Buffer changes made while executing `after-change-functions' don't call any before-change or after-change functions.Vbefore-change-function Vafter-change-function Vfirst-change-hook A list of functions to call before changing a buffer which is unmodified. The functions are run using the `run-hooks' function.Vundo-threshold Keep no more undo information once it exceeds this size. This threshold is applied when garbage collection happens. The size is counted as the number of bytes occupied, which includes both saved text and other data.Vundo-high-threshold Don't keep more than this much size of undo information. A command which pushes past this size is itself forgotten. This threshold is applied when garbage collection happens. The size is counted as the number of bytes occupied, which includes both saved text and other data.Vinhibit-read-only *Non-nil means disregard read-only status of buffers or characters. If the value is t, disregard `buffer-read-only' and all `read-only' text properties. If the value is a list, disregard `buffer-read-only' and disregard a `read-only' extent property or text property if the property value is a member of the list.Vkill-buffer-query-functions List of functions called with no args to query before killing a buffer.Vdelete-auto-save-files *Non-nil means delete auto-save file when a buffer is saved or killed.Vdefault-modeline-format Default value of `modeline-format' for buffers that don't override it. This is the same as (default-value 'modeline-format).Vdefault-abbrev-mode Default value of `abbrev-mode' for buffers that do not override it. This is the same as (default-value 'abbrev-mode).Vdefault-ctl-arrow Default value of `ctl-arrow' for buffers that do not override it. This is the same as (default-value 'ctl-arrow).Vdefault-display-direction Default display-direction for buffers that do not override it. This is the same as (default-value 'display-direction). Note: This is not yet implemented.Vdefault-truncate-lines Default value of `truncate-lines' for buffers that do not override it. This is the same as (default-value 'truncate-lines).Vdefault-fill-column Default value of `fill-column' for buffers that do not override it. This is the same as (default-value 'fill-column).Vdefault-left-margin Default value of `left-margin' for buffers that do not override it. This is the same as (default-value 'left-margin).Vdefault-tab-width Default value of `tab-width' for buffers that do not override it. This is the same as (default-value 'tab-width).Vdefault-case-fold-search Default value of `case-fold-search' for buffers that don't override it. This is the same as (default-value 'case-fold-search).Vdefault-buffer-file-type Default file type for buffers that do not override it. This is the same as (default-value 'buffer-file-type). The file type is nil for text, t for binary.Vmodeline-format Template for displaying modeline for current buffer. Each buffer has its own value of this variable. Value may be a string, a symbol or a list or cons cell. For a symbol, its value is used (but it is ignored if t or nil). A string appearing directly as the value of a symbol is processed verbatim in that the %-constructs below are not recognized. For a glyph, it is inserted as is. For a list whose car is a symbol, the symbol's value is taken, and if that is non-nil, the cadr of the list is processed recursively. Otherwise, the caddr of the list (if there is one) is processed. For a list whose car is a string or list, each element is processed recursively and the results are effectively concatenated. For a list whose car is an integer, the cdr of the list is processed and padded (if the number is positive) or truncated (if negative) to the width specified by that number. For a list whose car is an extent, the cdr of the list is processed normally but the results are displayed using the face of the extent, and mouse clicks over this section are processed using the keymap of the extent. (In addition, if the extent has a help-echo property, that string will be echoed when the mouse moves over this section.) See `generated-modeline-string' for more information. For a list whose car is a face, the cdr of the list is processed normally but the results will be displayed using the face in the car. For a list whose car is a keymap, the cdr of the list is processed normally but the keymap will apply for mouse clicks over the results, in addition to `modeline-map'. Nested keymap specifications are handled properly. A string is printed verbatim in the modeline except for %-constructs: (%-constructs are processed when the string is the entire modeline-format or when it is found in a cons-cell or a list) %b -- print buffer name. %c -- print the current column number. %f -- print visited file name. %* -- print %, * or hyphen. %+ -- print *, % or hyphen. % means buffer is read-only and * means it is modified. For a modified read-only buffer, %* gives % and %+ gives *. %s -- print process status. %l -- print the current line number. %S -- print name of selected frame (only meaningful under X Windows). %p -- print percent of buffer above top of window, or Top, Bot or All. %P -- print percent of buffer above bottom of window, perhaps plus Top, or print Bottom or All. %n -- print Narrow if appropriate. %t -- Under MS-DOS, print T if files is text, B if binary. %C -- under XEmacs/mule, print the mnemonic for `buffer-file-coding-system'. %[ -- print one [ for each recursive editing level. %] similar. %% -- print %. %- -- print infinitely many dashes. Decimal digits after the % specify field width to which to pad.Vdefault-major-mode *Major mode for new buffers. Defaults to `fundamental-mode'. nil here means use current buffer's major mode.Vfundamental-mode-abbrev-table The abbrev table of mode-specific abbrevs for Fundamental Mode.Vmajor-mode Symbol for current buffer's major mode.Vmode-name Pretty name of current buffer's major mode (a string).Vabbrev-mode Non-nil turns on automatic expansion of abbrevs as they are inserted. Automatically becomes buffer-local when set in any fashion.Vcase-fold-search *Non-nil if searches should ignore case. Automatically becomes buffer-local when set in any fashion. BUG: Under XEmacs/Mule, translations to or from non-ASCII characters (this includes chars in the range 128 - 255) are ignored by the string/buffer-searching routines. Thus, `case-fold-search' will not correctly conflate a-umlaut and A-umlaut even if the case tables call for this.Vfill-column *Column beyond which automatic line-wrapping should happen. Automatically becomes buffer-local when set in any fashion.Vleft-margin *Column for the default indent-line-function to indent to. Linefeed indents to this column in Fundamental mode. Automatically becomes buffer-local when set in any fashion. Do not confuse this with the specifier `left-margin-width'; that controls the size of a margin that is displayed outside of the text area.Vtab-width *Distance between tab stops (for display of tab characters), in columns. Automatically becomes buffer-local when set in any fashion.Vctl-arrow *Non-nil means display control chars with uparrow. Nil means use backslash and octal digits. An integer means characters >= ctl-arrow are assumed to be printable, and will be displayed as a single glyph. Any other value is the same as 160 - the code SPC with the high bit on. The interpretation of this variable is likely to change in the future. Automatically becomes buffer-local when set in any fashion. This variable does not apply to characters whose display is specified in the current display table (if there is one).Vtruncate-lines *Non-nil means do not display continuation lines; give each line of text one frame line. Automatically becomes buffer-local when set in any fashion. Note that this is overridden by the variable `truncate-partial-width-windows' if that variable is non-nil and this buffer is not full-frame width.Vdefault-directory Name of default directory of current buffer. Should end with slash. Each buffer has its own value of this variable.Vbuffer-file-type "Non-nil if the visited file is a binary file. This variable is meaningful on MS-DOS and Windows NT. On those systems, it is automatically local in every buffer. On other systems, this variable is normally always nil.Vdefault-buffer-file-coding-system Default value of `buffer-file-coding-system' for buffers that do not override it. This is the same as (default-value 'buffer-file-coding-system). This value is used both for buffers without associated files and for buffers whose files do not have any apparent coding system. See `buffer-file-coding-system'.Vbuffer-file-coding-system *Current coding system for the current buffer. When the buffer is written out into a file, this coding system will be used for the encoding. Automatically buffer-local when set in any fashion. This is normally set automatically when a file is loaded in based on the determined coding system of the file (assuming that `buffer-file-coding-system-for-read' is set to `undecided', which calls for automatic determination of the file's coding system). Normally the modeline indicates the current file coding system using its mnemonic abbreviation. The default value for this variable (which is normally used for buffers without associated files) is also used when automatic detection of a file's encoding is called for and there was no discernable encoding in the file (i.e. it was entirely or almost entirely ASCII). The default value should generally *not* be set to nil (equivalent to `no-conversion'), because if extended characters are ever inserted into the buffer, they will be lost when the file is written out. A good choice is `iso-2022-8' (the simple ISO 2022 8-bit encoding), which will write out ASCII and Latin-1 characters in the standard (and highly portable) fashion and use standard escape sequences for other charsets. Another reasonable choice is `escape-quoted', which is equivalent to `iso-2022-8' but prefixes certain control characters with ESC to make sure they are not interpreted as escape sequences when read in. This latter coding system results in more "correct" output in the presence of control characters in the buffer, in the sense that when read in again using the same coding system, the result will virtually always match the original contents of the buffer, which is not the case with `iso-2022-8'; but the output is less portable when dealing with binary data -- there may be stray ESC characters when the file is read by another program. `buffer-file-coding-system' does *not* control the coding system used when a file is read in. Use the variables `buffer-file-coding-system-for-read' and `buffer-file-coding-system-alist' for that. From a Lisp program, if you wish to unilaterally specify the coding system used for one particular operation, you should bind the variable `coding-system-for-read' rather than changing the other two variables just mentioned, which are intended to be used for global environment specification. */ ); #endif /* MULE */ DEFVAR_BUFFER_LOCAL ("auto-fill-function", auto_fill_function /* Function called (if non-nil) to perform auto-fill. It is called after self-inserting a space at a column beyond `fill-column'. Each buffer has its own value of this variable. NOTE: This variable is not an ordinary hook; It may not be a list of functions.Vbuffer-file-name Name of file visited in current buffer, or nil if not visiting a file. Each buffer has its own value of this variable.Vbuffer-file-truename The real name of the file visited in the current buffer, or nil if not visiting a file. This is the result of passing buffer-file-name to the `file-truename' function. Every buffer has its own value of this variable. This variable is automatically maintained by the functions that change the file name associated with a buffer.Vbuffer-auto-save-file-name Name of file for auto-saving current buffer, or nil if buffer should not be auto-saved. Each buffer has its own value of this variable.Vbuffer-read-only Non-nil if this buffer is read-only. Each buffer has its own value of this variable.Vbuffer-backed-up Non-nil if this buffer's file has been backed up. Backing up is done before the first time the file is saved. Each buffer has its own value of this variable.Vbuffer-saved-size Length of current buffer when last read in, saved or auto-saved. 0 initially. Each buffer has its own value of this variable.Vselective-display Non-nil enables selective display: Integer N as value means display only lines that start with less than n columns of space. A value of t means, after a ^M, all the rest of the line is invisible. Then ^M's in the file are written into files as newlines. Automatically becomes buffer-local when set in any fashion.Vselective-display-ellipses t means display ... on previous line when a line is invisible. Automatically becomes buffer-local when set in any fashion.Vlocal-abbrev-table Local (mode-specific) abbrev table of current buffer.Voverwrite-mode Non-nil if self-insertion should replace existing text. The value should be one of `overwrite-mode-textual', `overwrite-mode-binary', or nil. If it is `overwrite-mode-textual', self-insertion still inserts at the end of a line, and inserts when point is before a tab, until the tab is filled in. If `overwrite-mode-binary', self-insertion replaces newlines and tabs too. Automatically becomes buffer-local when set in any fashion.Vbuffer-undo-list List of undo entries in current buffer. Recent changes come first; older changes follow newer. An entry (BEG . END) represents an insertion which begins at position BEG and ends at position END. An entry (TEXT . POSITION) represents the deletion of the string TEXT from (abs POSITION). If POSITION is positive, point was at the front of the text being deleted; if negative, point was at the end. An entry (t HIGH . LOW) indicates that the buffer previously had "unmodified" status. HIGH and LOW are the high and low 16-bit portions of the visited file's modification time, as of that time. If the modification time of the most recent save is different, this entry is obsolete. An entry of the form EXTENT indicates that EXTENT was attached in the buffer. Undoing an entry of this form detaches EXTENT. An entry of the form (EXTENT START END) indicates that EXTENT was detached from the buffer. Undoing an entry of this form attaches EXTENT from START to END. An entry of the form POSITION indicates that point was at the buffer location given by the integer. Undoing an entry of this form places point at POSITION. nil marks undo boundaries. The undo command treats the changes between two undo boundaries as a single step to be undone. If the value of the variable is t, undo information is not recorded.Vpoint-before-scroll Value of point before the last series of scroll operations, or nil.Vbuffer-file-format List of formats to use when saving this buffer. Formats are defined by `format-alist'. This variable is set when a file is visited. Automatically local in all buffers.Vbuffer-invisibility-spec Invisibility spec of this buffer. The default is t, which means that text is invisible if it has (or is covered by an extent with) a non-nil `invisible' property. If the value is a list, a text character is invisible if its `invisible' property is an element in that list. If an element is a cons cell of the form (PROP . ELLIPSIS), then characters with property value PROP are invisible, and they have an ellipsis as well if ELLIPSIS is non-nil. Note that the actual characters used for the ellipsis are controllable using `invisible-text-glyph', and default to "...".Vgenerated-modeline-string String of characters in this buffer's modeline as of the last redisplay. Each time the modeline is recomputed, the resulting characters are stored in this string, which is resized as necessary. You may not set this variable, and modifying this string will not change the modeline; you have to change `modeline-format' if you want that. For each extent in `modeline-format' that is encountered when processing the modeline, a corresponding extent is placed in `generated-modeline-string' and covers the text over which the extent in `modeline-format' applies. The extent in `generated-modeline-string' is made a child of the extent in `modeline-format', which means that it inherits all properties from that extent. Note that the extents in `generated-modeline-string' are managed automatically. You should not explicitly put any extents in `generated-modeline-string'; if you do, they will disappear the next time the modeline is processed. For extents in `modeline-format', the following properties are currently handled: `face' Affects the face of the modeline text. Currently, faces do not merge properly; only the most recently encountered face is used. This is a bug. `keymap' Affects the disposition of button events over the modeline text. Multiple applicable keymaps *are* handled properly, and `modeline-map' still applies to any events that don't have bindings in extent-specific keymaps. `help-echo' If a string, causes the string to be displayed when the mouse moves over the text.Fbyte-code Function used internally in byte-compiled code. The first argument is a string of byte code; the second, a vector of constants; the third, the maximum stack depth used in this function. If the third argument is incorrect, Emacs may crash. arguments: (BYTESTR VECTOR MAXDEPTH) Vbyte-code-meter A vector of vectors which holds a histogram of byte-code usage. (aref (aref byte-code-meter 0) CODE) indicates how many times the byte opcode CODE has been executed. (aref (aref byte-code-meter CODE1) CODE2), where CODE1 is not 0, indicates how many times the byte opcodes CODE1 and CODE2 have been executed in succession.Vbyte-metering-on If non-nil, keep profiling information on byte code usage. The variable byte-code-meter indicates how often each byte opcode is used. If a symbol has a property named `byte-code-meter' whose value is an integer, it is incremented each time that symbol's function is called.Finteractive Specify a way of parsing arguments for interactive use of a function. For example, write (defun foo (arg) "Doc string" (interactive "p") ...use arg...) to make ARG be the prefix argument when `foo' is called as a command. The "call" to `interactive' is actually a declaration rather than a function; it tells `call-interactively' how to read arguments to pass to the function. When actually called, `interactive' just returns nil. The argument of `interactive' is usually a string containing a code letter followed by a prompt. (Some code letters do not use I/O to get the argument and do not need prompts.) To prompt for multiple arguments, give a code letter, its prompt, a newline, and another code letter, etc. Prompts are passed to format, and may use % escapes to print the arguments that have already been read. If the argument is not a string, it is evaluated to get a list of arguments to pass to the function. Just `(interactive)' means pass no args when calling interactively. Code letters available are: a -- Function name: symbol with a function definition. b -- Name of existing buffer. B -- Name of buffer, possibly nonexistent. c -- Character. C -- Command name: symbol with interactive function definition. d -- Value of point as number. Does not do I/O. D -- Directory name. e -- Last mouse-button or misc-user event that invoked this command. If used more than once, the Nth `e' returns the Nth such event. Does not do I/O. f -- Existing file name. F -- Possibly nonexistent file name. i -- Always nil, ignore. Use to skip arguments when interactive. k -- Key sequence (a vector of events). K -- Key sequence to be redefined (do not automatically down-case). m -- Value of mark as number. Does not do I/O. n -- Number read using minibuffer. N -- Prefix arg converted to number, or if none, do like code `n'. p -- Prefix arg converted to number. Does not do I/O. P -- Prefix arg in raw form. Does not do I/O. r -- Region: point and mark as 2 numeric args, smallest first. Does no I/O. s -- Any string. S -- Any symbol. v -- Variable name: symbol that is user-variable-p. x -- Lisp expression read but not evaluated. X -- Lisp expression read and evaluated. z -- Coding system. (Always nil if no Mule support.) Z -- Coding system, nil if no prefix arg. (Always nil if no Mule support.) In addition, if the string begins with `*' then an error is signaled if the buffer is read-only. This happens before reading any arguments. If the string begins with `@', then the window the mouse is over is selected before anything else is done. If the string begins with `_', then this command will not cause the region to be deactivated when it completes; that is, `zmacs-region-stays' will be set to t when the command exits successfully. You may use any of `@', `*' and `_' at the beginning of the string; they are processed in the order that they appear.Fcall-interactively Call FUNCTION, reading args according to its interactive calling specs. Return the value FUNCTION returns. The function contains a specification of how to do the argument reading. In the case of user-defined functions, this is specified by placing a call to the function `interactive' at the top level of the function body. See `interactive'. If optional second arg RECORD-FLAG is the symbol `lambda', the interactive calling arguments for FUNCTION are read and returned as a list, but the function is not called on them. If RECORD-FLAG is `t' then unconditionally put this command in the command-history. Otherwise, this is done only if an arg is read using the minibuffer. The argument KEYS specifies the value to use instead of (this-command-keys) when reading the arguments. arguments: (FUNCTION &optional RECORD-FLAG KEYS) Fprefix-numeric-value Return numeric meaning of raw prefix argument ARG. A raw prefix argument is what you get from `(interactive "P")'. Its numeric meaning is what you would get from `(interactive "p")'. arguments: (RAW) Vcurrent-prefix-arg The value of the prefix argument for this editing command. It may be a number, or the symbol `-' for just a minus sign as arg, or a list whose car is a number for just one or more C-U's or nil if no argument has been specified. This is what `(interactive "P")' returns.Vcommand-history List of recent commands that read arguments from terminal. Each command is represented as a form to evaluate.Vcommand-debug-status Debugging status of current interactive command. Bound each time `call-interactively' is called; may be set by the debugger as a reminder for itself.Fcall-process-internal Call PROGRAM synchronously in separate process, with coding-system specified. Arguments are (PROGRAM &optional INFILE BUFFER DISPLAY &rest ARGS). The program's input comes from file INFILE (nil means `/dev/null'). Insert output in BUFFER before point; t means current buffer; nil for BUFFER means discard it; 0 means discard and don't wait. BUFFER can also have the form (REAL-BUFFER STDERR-FILE); in that case, REAL-BUFFER says what to do with standard output, as above, while STDERR-FILE says what to do with standard error in the child. STDERR-FILE may be nil (discard standard error output), t (mix it with ordinary output), or a file name string. Fourth arg DISPLAY non-nil means redisplay buffer as output is inserted. Remaining arguments are strings passed as command arguments to PROGRAM. If BUFFER is 0, `call-process' returns immediately with value nil. Otherwise it waits for PROGRAM to terminate and returns a numeric exit status or a signal description string. If you quit, the process is killed with SIGINT, or SIGKILL if you quit again.Fgetenv Return the value of environment variable VAR, as a string. VAR is a string, the name of the variable. When invoked interactively, prints the value in the echo area. arguments: (VAR &optional INTERACTIVEP) Vbinary-process-input *If non-nil then new subprocesses are assumed to take binary input.Vbinary-process-output *If non-nil then new subprocesses are assumed to produce binary output.Vshell-file-name *File name to load inferior shells from. Initialized from the SHELL environment variable.Vexec-path *List of directories to search programs to run in subprocesses. Each element is a string (directory name) or nil (try default directory).Vexec-directory Directory of architecture-dependent files that come with XEmacs, especially executable programs intended for XEmacs to invoke.Vdata-directory Directory of architecture-independent files that come with XEmacs, intended for XEmacs to use. Use of this variable in new code is almost never correct. See the function `locate-data-directory' and the variable `data-directory-list'.Vdata-directory-list List of directories of architecture-independent files that come with XEmacs or were installed as packages, and are intended for XEmacs to use.Vsite-directory Directory of architecture-independent files that do not come with XEmacs, intended for XEmacs to use.Vdoc-directory Directory containing the DOC file that comes with XEmacs. This is usually the same as exec-directory.Vprefix-directory The default directory under which XEmacs is installed.Vprocess-environment List of environment variables for subprocesses to inherit. Each element should be a string of the form ENVVARNAME=VALUE. The environment which Emacs inherits is placed in this variable when Emacs starts.Vconfigure-info-directory For internal use by the build procedure only. This is the name of the directory in which the build procedure installed Emacs's info files; the default value for Info-default-directory-list includes this.Vinfopath-internal The configured initial value of Info-default-directory-list.Fupcase Convert argument to upper case and return that. The argument may be a character or string. The result has the same type. The argument object is not altered--the value is a copy. See also `capitalize', `downcase' and `upcase-initials'. Optional second arg BUFFER specifies which buffer's case tables to use, and defaults to the current buffer. arguments: (OBJ &optional BUFFER) Fdowncase Convert argument to lower case and return that. The argument may be a character or string. The result has the same type. The argument object is not altered--the value is a copy. Optional second arg BUFFER specifies which buffer's case tables to use, and defaults to the current buffer. arguments: (OBJ &optional BUFFER) Fcapitalize Convert argument to capitalized form and return that. This means that each word's first character is upper case and the rest is lower case. The argument may be a character or string. The result has the same type. The argument object is not altered--the value is a copy. Optional second arg BUFFER specifies which buffer's case tables to use, and defaults to the current buffer. arguments: (OBJ &optional BUFFER) Fupcase-initials Convert the initial of each word in the argument to upper case. Do not change the other letters of each word. The argument may be a character or string. The result has the same type. The argument object is not altered--the value is a copy. Optional second arg BUFFER specifies which buffer's case tables to use, and defaults to the current buffer. arguments: (OBJ &optional BUFFER) Fupcase-region Convert the region to upper case. In programs, wants two arguments. These arguments specify the starting and ending character numbers of the region to operate on. When used as a command, the text between point and the mark is operated on. See also `capitalize-region'. Optional third arg BUFFER defaults to the current buffer. arguments: (B E &optional BUFFER) Fdowncase-region Convert the region to lower case. In programs, wants two arguments. These arguments specify the starting and ending character numbers of the region to operate on. When used as a command, the text between point and the mark is operated on. Optional third arg BUFFER defaults to the current buffer. arguments: (B E &optional BUFFER) Fcapitalize-region Convert the region to capitalized form. Capitalized form means each word's first character is upper case and the rest of it is lower case. In programs, give two arguments, the starting and ending character positions to operate on. Optional third arg BUFFER defaults to the current buffer. arguments: (B E &optional BUFFER) Fupcase-initials-region Upcase the initial of each word in the region. Subsequent letters of each word are not changed. In programs, give two arguments, the starting and ending character positions to operate on. Optional third arg BUFFER defaults to the current buffer. arguments: (B E &optional BUFFER) Fupcase-word Convert following word (or ARG words) to upper case, moving over. With negative argument, convert previous words but do not move. See also `capitalize-word'. Optional second arg BUFFER defaults to the current buffer. arguments: (ARG &optional BUFFER) Fdowncase-word Convert following word (or ARG words) to lower case, moving over. With negative argument, convert previous words but do not move. Optional second arg BUFFER defaults to the current buffer. arguments: (ARG &optional BUFFER) Fcapitalize-word Capitalize the following word (or ARG words), moving over. This gives the word(s) a first character in upper case and the rest lower case. With negative argument, capitalize previous words but do not move. Optional second arg BUFFER defaults to the current buffer. arguments: (ARG &optional BUFFER) Fcase-table-p Return t iff ARG is a case table. See `set-case-table' for more information on these data structures. arguments: (TABLE) Fcurrent-case-table Return the case table of BUFFER, which defaults to the current buffer. arguments: (&optional BUFFER) Fstandard-case-table Return the standard case table. This is the one used for new buffers. arguments: () Fset-case-table Select a new case table for the current buffer. A case table is a list (DOWNCASE UPCASE CANONICALIZE EQUIVALENCES) where each element is either nil or a string of length 256. DOWNCASE maps each character to its lower-case equivalent. UPCASE maps each character to its upper-case equivalent; if lower and upper case characters are in 1-1 correspondence, you may use nil and the upcase table will be deduced from DOWNCASE. CANONICALIZE maps each character to a canonical equivalent; any two characters that are related by case-conversion have the same canonical equivalent character; it may be nil, in which case it is deduced from DOWNCASE and UPCASE. EQUIVALENCES is a map that cyclicly permutes each equivalence class (of characters with the same canonical equivalent); it may be nil, in which case it is deduced from CANONICALIZE. BUG: Under XEmacs/Mule, translations to or from non-ASCII characters (this includes chars in the range 128 - 255) are ignored by the string/buffer-searching routines. Thus, `case-fold-search' will not correctly conflate a-umlaut and A-umlaut even if the case tables call for this. arguments: (TABLE) Fset-standard-case-table Select a new standard case table for new buffers. See `set-case-table' for more info on case tables. arguments: (TABLE) Fchar-table-p Return non-nil if OBJECT is a char table. A char table is a table that maps characters (or ranges of characters) to values. Char tables are specialized for characters, only allowing particular sorts of ranges to be assigned values. Although this loses in generality, it makes for extremely fast (constant-time) lookups, and thus is feasible for applications that do an extremely large number of lookups (e.g. scanning a buffer for a character in a particular syntax, where a lookup in the syntax table must occur once per character). When Mule support exists, the types of ranges that can be assigned values are -- all characters -- an entire charset -- a single row in a two-octet charset -- a single character When Mule support is not present, the types of ranges that can be assigned values are -- all characters -- a single character To create a char table, use `make-char-table'. To modify a char table, use `put-char-table' or `remove-char-table'. To retrieve the value for a particular character, use `get-char-table'. See also `map-char-table', `clear-char-table', `copy-char-table', `valid-char-table-type-p', `char-table-type-list', `valid-char-table-value-p', and `check-char-table-value'. arguments: (OBJECT) Fchar-table-type-list Return a list of the recognized char table types. See `valid-char-table-type-p'. arguments: () Fvalid-char-table-type-p Return t if TYPE if a recognized char table type. Each char table type is used for a different purpose and allows different sorts of values. The different char table types are `category' Used for category tables, which specify the regexp categories that a character is in. The valid values are nil or a bit vector of 95 elements. Higher-level Lisp functions are provided for working with category tables. Currently categories and category tables only exist when Mule support is present. `char' A generalized char table, for mapping from one character to another. Used for case tables, syntax matching tables, `keyboard-translate-table', etc. The valid values are characters. `generic' An even more generalized char table, for mapping from a character to anything. `display' Used for display tables, which specify how a particular character is to appear when displayed. #### Not yet implemented. `syntax' Used for syntax tables, which specify the syntax of a particular character. Higher-level Lisp functions are provided for working with syntax tables. The valid values are integers. arguments: (TYPE) Fchar-table-type Return the type of char table TABLE. See `valid-char-table-type-p'. arguments: (TABLE) Freset-char-table Reset a char table to its default state. arguments: (TABLE) Fmake-char-table Make a new, empty char table of type TYPE. Currently recognized types are 'char, 'category, 'display, 'generic, and 'syntax. See `valid-char-table-type-p'. arguments: (TYPE) Fcopy-char-table Make a new char table which is a copy of OLD-TABLE. It will contain the same values for the same characters and ranges as OLD-TABLE. The values will not themselves be copied. arguments: (OLD-TABLE) Fget-char-table Find value for char CH in TABLE. arguments: (CH TABLE) Fget-range-char-table Find value for a range in TABLE. If there is more than one value, return MULTI (defaults to nil). arguments: (RANGE TABLE &optional MULTI) Fvalid-char-table-value-p Return non-nil if VALUE is a valid value for CHAR-TABLE-TYPE. arguments: (VALUE CHAR-TABLE-TYPE) Fcheck-valid-char-table-value Signal an error if VALUE is not a valid value for CHAR-TABLE-TYPE. arguments: (VALUE CHAR-TABLE-TYPE) Fput-char-table Set the value for chars in RANGE to be VAL in TABLE. RANGE specifies one or more characters to be affected and should be one of the following: -- t (all characters are affected) -- A charset (only allowed when Mule support is present) -- A vector of two elements: a two-octet charset and a row number (only allowed when Mule support is present) -- A single character VAL must be a value appropriate for the type of TABLE. See `valid-char-table-type-p'. arguments: (RANGE VAL TABLE) Fmap-char-table Map FUNCTION over entries in TABLE, calling it with two args, each key and value in the table. RANGE specifies a subrange to map over and is in the same format as the RANGE argument to `put-range-table'. If omitted or t, it defaults to the entire table. arguments: (FUNCTION TABLE &optional RANGE) Fcategory-table-p Return t if ARG is a category table. A category table is a type of char table used for keeping track of categories. Categories are used for classifying characters for use in regexps -- you can refer to a category rather than having to use a complicated [] expression (and category lookups are significantly faster). There are 95 different categories available, one for each printable character (including space) in the ASCII charset. Each category is designated by one such character, called a "category designator". They are specified in a regexp using the syntax "\cX", where X is a category designator. A category table specifies, for each character, the categories that the character is in. Note that a character can be in more than one category. More specifically, a category table maps from a character to either the value nil (meaning the character is in no categories) or a 95-element bit vector, specifying for each of the 95 categories whether the character is in that category. Special Lisp functions are provided that abstract this, so you do not have to directly manipulate bit vectors. arguments: (OBJ) Fcheck-category-at Return t if category of a character at POS includes DESIGNATOR, else return nil. Optional third arg specifies which buffer (defaulting to current), and fourth specifies the CATEGORY-TABLE, (defaulting to the buffer's category table). arguments: (POS DESIGNATOR &optional BUFFER CATEGORY-TABLE) Fchar-in-category-p Return t if category of character CHR includes DESIGNATOR, else nil. Optional third arg specifies the CATEGORY-TABLE to use, which defaults to the system default table. arguments: (CHR DESIGNATOR &optional CATEGORY-TABLE) Fcategory-table Return the current category table. This is the one specified by the current buffer, or by BUFFER if it is non-nil. arguments: (&optional BUFFER) Fstandard-category-table Return the standard category table. This is the one used for new buffers. arguments: () Fcopy-category-table Construct a new category table and return it. It is a copy of the TABLE, which defaults to the standard category table. arguments: (&optional TABLE) Fset-category-table Select a new category table for BUFFER. One argument, a category table. BUFFER defaults to the current buffer if omitted. arguments: (TABLE &optional BUFFER) Fcategory-designator-p Return t if ARG is a category designator (a char in the range ' ' to '~'). arguments: (OBJ) Fcategory-table-value-p Return t if ARG is a category table value. Valid values are nil or a bit vector of size 95. arguments: (OBJ) Freally-early-error-handler You should almost certainly not be using this. arguments: (X) Frecursive-edit Invoke the editor command loop recursively. To get out of the recursive edit, a command can do `(throw 'exit nil)'; that tells this function to return. Alternately, `(throw 'exit t)' makes this function signal an error. arguments: () Fcommand-loop-1 Invoke the internals of the canonical editor command loop. Don't call this unless you know what you're doing. arguments: () Vcommand-loop-level Number of recursive edits in progress.Vdisabled-command-hook Value is called instead of any command that is disabled, i.e. has a non-nil `disabled' property.Vleave-window-hook Not yet implemented.Venter-window-hook Not yet implemented.Vtop-level Form to evaluate when Emacs starts up. Useful to set before you dump a modified Emacs.Vcommand-loop Function or one argument to call to read and process keyboard commands. The passed argument specifies whether or not to handle errors.Fforward-char Move point right ARG characters (left if ARG negative). On reaching end of buffer, stop and signal error. Error signaling is suppressed if `signal-error-on-buffer-boundary' is nil. If BUFFER is nil, the current buffer is assumed. arguments: (&optional ARG BUFFER) Fbackward-char Move point left ARG characters (right if ARG negative). On attempt to pass beginning or end of buffer, stop and signal error. Error signaling is suppressed if `signal-error-on-buffer-boundary' is nil. If BUFFER is nil, the current buffer is assumed. arguments: (&optional ARG BUFFER) Fforward-line Move ARG lines forward (backward if ARG is negative). Precisely, if point is on line I, move to the start of line I + ARG. If there isn't room, go as far as possible (no error). Returns the count of lines left to move. If moving forward, that is ARG - number of lines moved; if backward, ARG + number moved. With positive ARG, a non-empty line at the end counts as one line successfully moved (for the return value). If BUFFER is nil, the current buffer is assumed. arguments: (&optional ARG BUFFER) Fpoint-at-bol Return the character position of the first character on the current line. With argument N not nil or 1, move forward N - 1 lines first. If scan reaches end of buffer, return that position. This function does not move point. arguments: (&optional ARG BUFFER) Fbeginning-of-line Move point to beginning of current line. With argument ARG not nil or 1, move forward ARG - 1 lines first. If scan reaches end of buffer, stop there without error. If BUFFER is nil, the current buffer is assumed. arguments: (&optional ARG BUFFER) Fpoint-at-eol Return the character position of the last character on the current line. With argument N not nil or 1, move forward N - 1 lines first. If scan reaches end of buffer, return that position. This function does not move point. arguments: (&optional ARG BUFFER) Fend-of-line Move point to end of current line. With argument ARG not nil or 1, move forward ARG - 1 lines first. If scan reaches end of buffer, stop there without error. If BUFFER is nil, the current buffer is assumed. arguments: (&optional ARG BUFFER) Fdelete-char Delete the following ARG characters (previous, with negative arg). Optional second arg KILLFLAG non-nil means kill instead (save in kill ring). Interactively, ARG is the prefix arg, and KILLFLAG is set if ARG was explicitly specified. arguments: (ARG &optional KILLFLAG) Fdelete-backward-char Delete the previous ARG characters (following, with negative ARG). Optional second arg KILLFLAG non-nil means kill instead (save in kill ring). Interactively, ARG is the prefix arg, and KILLFLAG is set if ARG was explicitly specified. arguments: (ARG &optional KILLFLAG) Fself-insert-command Insert the character you type. Whichever character you type to run this command is inserted. arguments: (ARG) Fself-insert-internal Invoke `self-insert-command' as if CH is entered from keyboard. arguments: (CH) Vself-insert-face If non-nil, set the face of the next self-inserting character to this. See also `self-insert-face-command'.Vself-insert-face-command This is the command that set up `self-insert-face'. If `last-command' does not equal this value, we ignore `self-insert-face'.Vblink-paren-function Function called, if non-nil, whenever a close parenthesis is inserted. More precisely, a char with closeparen syntax is self-inserted.Vsignal-error-on-buffer-boundary *t means beep when movement would take point past (point-min) or (point-max).Fvalid-console-type-p Given a CONSOLE-TYPE, return t if it is valid. Valid types are 'x, 'tty, and 'stream. arguments: (CONSOLE-TYPE) Fconsole-type-list Return a list of valid console types. arguments: () Fcdfw-console Given a console, device, frame, or window, return the associated console. Return nil otherwise. arguments: (OBJ) Fselected-console Return the console which is currently active. arguments: () Fselect-console Select the console CONSOLE. Subsequent editing commands apply to its selected device, selected frame, and selected window. The selection of CONSOLE lasts until the next time the user does something to select a different console, or until the next time this function is called. arguments: (CONSOLE) Fconsolep Return non-nil if OBJECT is a console. arguments: (OBJECT) Fconsole-live-p Return non-nil if OBJECT is a console that has not been deleted. arguments: (OBJECT) Fconsole-type Return the type of the specified console (e.g. `x' or `tty'). Value is `tty' for a tty console (a character-only terminal), `x' for a console that is an X display, `win32' for a console that is a Windows or Windows NT connection (not yet implemented), `pc' for a console that is a direct-write MS-DOS connection (not yet implemented), `stream' for a stream console (which acts like a stdio stream), and `dead' for a deleted console. arguments: (&optional CONSOLE) Fconsole-name Return the name of the specified console. arguments: (&optional CONSOLE) Fconsole-connection Return the connection of the specified console. CONSOLE defaults to the selected console if omitted. arguments: (&optional CONSOLE) Ffind-console Look for an existing console attached to connection CONNECTION. Return the console if found; otherwise, return nil. If TYPE is specified, only return consoles of that type; otherwise, return consoles of any type. (It is possible, although unlikely, that two consoles of different types could have the same connection name; in such a case, the first console found is returned.) arguments: (CONNECTION &optional TYPE) Fget-console Look for an existing console attached to connection CONNECTION. Return the console if found; otherwise, signal an error. If TYPE is specified, only return consoles of that type; otherwise, return consoles of any type. (It is possible, although unlikely, that two consoles of different types could have the same connection name; in such a case, the first console found is returned.) arguments: (CONNECTION &optional TYPE) Fdelete-console Delete CONSOLE, permanently eliminating it from use. Normally, you cannot delete the last non-minibuffer-only frame (you must use `save-buffers-kill-emacs' or `kill-emacs'). However, if optional second argument FORCE is non-nil, you can delete the last frame. (This will automatically call `save-buffers-kill-emacs'.) arguments: (CONSOLE &optional FORCE) Fconsole-list Return a list of all consoles. arguments: () Fconsole-device-list Return a list of all devices on CONSOLE. If CONSOLE is nil, the selected console will be used. arguments: (&optional CONSOLE) Fconsole-enable-input Enable input on console CONSOLE. arguments: (CONSOLE) Fconsole-disable-input Disable input on console CONSOLE. arguments: (CONSOLE) Fconsole-on-window-system-p Return non-nil if this console is on a window system. This generally means that there is support for the mouse, the menubar, the toolbar, glyphs, etc. arguments: (&optional CONSOLE) Fsuspend-emacs Stop Emacs and return to superior process. You can resume later. On systems that don't have job control, run a subshell instead. If optional arg STUFFSTRING is non-nil, its characters are stuffed to be read as terminal input by Emacs's superior shell. Before suspending, run the normal hook `suspend-hook'. After resumption run the normal hook `suspend-resume-hook'. Some operating systems cannot stop the Emacs process and resume it later. On such systems, Emacs will start a subshell and wait for it to exit. arguments: (&optional STUFFSTRING) Fsuspend-console Suspend a console. For tty consoles, it sends a signal to suspend the process in charge of the tty, and removes the devices and frames of that console from the display. If optional arg CONSOLE is non-nil, it is the console to be suspended. Otherwise it is assumed to be the selected console. Some operating systems cannot stop processes and resume them later. On such systems, who knows what will happen. arguments: (&optional CONSOLE) Fresume-console Re-initialize a previously suspended console. For tty consoles, do stuff to the tty to make it sane again. arguments: (CONSOLE) Fset-input-mode Set mode of reading keyboard input. First arg is ignored, for backward compatibility. Second arg FLOW non-nil means use ^S/^Q flow control for output to terminal (no effect except in CBREAK mode). Third arg META t means accept 8-bit input (for a Meta key). META nil means ignore the top bit, on the assumption it is parity. Otherwise, accept 8-bit input and don't use the top bit for Meta. First three arguments only apply to TTY consoles. Optional fourth arg QUIT if non-nil specifies character to use for quitting. Optional fifth arg CONSOLE specifies console to make changes to; nil means the selected console. See also `current-input-mode'. arguments: (IGNORED FLOW META &optional QUIT CONSOLE) Fcurrent-input-mode Return information about the way Emacs currently reads keyboard input. Optional arg CONSOLE specifies console to return information about; nil means the selected console. The value is a list of the form (nil FLOW META QUIT), where FLOW is non-nil if Emacs uses ^S/^Q flow control for output to the terminal; this does not apply if Emacs uses interrupt-driven input. META is t if accepting 8-bit input with 8th bit as Meta flag. META nil means ignoring the top bit, on the assumption it is parity. META is neither t nor nil if accepting 8-bit input and using all 8 bits as the character code. QUIT is the character Emacs currently uses to quit. FLOW, and META are only meaningful for TTY consoles. The elements of this list correspond to the arguments of `set-input-mode'. arguments: (&optional CONSOLE) Vcreate-console-hook Function or functions to call when a console is created. One argument, the newly-created console. This is called after the first frame has been created, but before calling the `create-device-hook' or `create-frame-hook'. Note that in general the console will not be selected.Vdelete-console-hook Function or functions to call when a console is deleted. One argument, the to-be-deleted console.Vdefault-function-key-map Default value of `function-key-map' for consoles that don't override it. This is the same as (default-value 'function-key-map).Vfunction-key-map Keymap mapping ASCII function key sequences onto their preferred forms. This allows Emacs to recognize function keys sent from ASCII terminals at any point in a key sequence. The `read-key-sequence' function replaces any subsequence bound by `function-key-map' with its binding. More precisely, when the active keymaps have no binding for the current key sequence but `function-key-map' binds a suffix of the sequence to a vector or string, `read-key-sequence' replaces the matching suffix with its binding, and continues with the new sequence. The events that come from bindings in `function-key-map' are not themselves looked up in `function-key-map'. For example, suppose `function-key-map' binds `ESC O P' to [f1]. Typing `ESC O P' to `read-key-sequence' would return [#<keypress-event f1>]. Typing `C-x ESC O P' would return [#<keypress-event control-X> #<keypress-event f1>]. If [f1] were a prefix key, typing `ESC O P x' would return [#<keypress-event f1> #<keypress-event x>].Vtty-erase-char The ERASE character as set by the user with stty. When this value cannot be determined or would be meaningless (on non-TTY consoles, for example), it is set to nil.Vdefining-kbd-macro Non-nil while a console macro is being defined. Don't set this!Vlast-kbd-macro Last kbd macro defined, as a vector of events; nil if none defined.Vprefix-arg The value of the prefix argument for the next editing command. It may be a number, or the symbol `-' for just a minus sign as arg, or a list whose car is a number for just one or more C-U's or nil if no argument has been specified. You cannot examine this variable to find the argument for this command since it has been set to nil by the time you can look. Instead, you should use the variable `current-prefix-arg', although normally commands can get this prefix argument with (interactive "P").Vdefault-minibuffer-frame Minibufferless frames use this frame's minibuffer. Emacs cannot create minibufferless frames unless this is set to an appropriate surrogate. XEmacs consults this variable only when creating minibufferless frames; once the frame is created, it sticks with its assigned minibuffer, no matter what this variable is set to. This means that this variable doesn't necessarily say anything meaningful about the current set of frames, or where the minibuffer is currently being displayed.Voverriding-terminal-local-map Keymap that overrides all other local keymaps, for the selected console only. If this variable is non-nil, it is used as a keymap instead of the buffer's local map, and the minor mode keymaps and text property keymaps.Vterminal-console The initial console-object, which represents XEmacs' stdout.Vterminal-device The initial device-object, which represents XEmacs' stdout.Vterminal-frame The initial frame-object, which represents XEmacs' stdout.Fwrong-type-argument Signal an error until the correct type value is given by the user. This function loops, signalling a continuable `wrong-type-argument' error with PREDICATE and VALUE as the data associated with the error and then calling PREDICATE on the returned value, until the value gotten satisfies PREDICATE. At that point, the gotten value is returned. arguments: (PREDICATE VALUE) Feq T if the two args are the same Lisp object. arguments: (OBJ1 OBJ2) Fold-eq T if the two args are (in most cases) the same Lisp object. Special kludge: A character is considered `old-eq' to its equivalent integer even though they are not the same object and are in fact of different types. This is ABSOLUTELY AND UTTERLY HORRENDOUS but is necessary to preserve byte-code compatibility with v19. This kludge is known as the "char-to-int confoundance disease" and appears in a number of other functions with `old-foo' equivalents. Do not use this function! arguments: (OBJ1 OBJ2) Fnull T if OBJECT is nil. arguments: (OBJECT) Fconsp T if OBJECT is a cons cell. arguments: (OBJECT) Fatom T if OBJECT is not a cons cell. This includes nil. arguments: (OBJECT) Flistp T if OBJECT is a list. This includes nil. arguments: (OBJECT) Fnlistp T if OBJECT is not a list. Lists include nil. arguments: (OBJECT) Fsymbolp T if OBJECT is a symbol. arguments: (OBJECT) Fkeywordp T if OBJECT is a keyword. arguments: (OBJECT) Fvectorp T if OBJECT is a vector. arguments: (OBJECT) Fbit-vector-p T if OBJECT is a bit vector. arguments: (OBJECT) Fstringp T if OBJECT is a string. arguments: (OBJECT) Farrayp T if OBJECT is an array (string, vector, or bit vector). arguments: (OBJECT) Fsequencep T if OBJECT is a sequence (list or array). arguments: (OBJECT) Fmarkerp T if OBJECT is a marker (editor pointer). arguments: (OBJECT) Fsubrp T if OBJECT is a built-in function. arguments: (OBJECT) Fsubr-min-args Return minimum number of args built-in function SUBR may be called with. arguments: (SUBR) Fsubr-max-args Return maximum number of args built-in function SUBR may be called with, or nil if it takes an arbitrary number of arguments or is a special form. arguments: (SUBR) Fcompiled-function-p t if OBJECT is a byte-compiled function object. arguments: (OBJECT) Fcharacterp t if OBJECT is a character. Unlike in XEmacs v19 and Emacs, a character is its own primitive type. Any character can be converted into an equivalent integer using `char-to-int'. To convert the other way, use `int-to-char'; however, only some integers can be converted into characters. Such an integer is called a `char-int'; see `char-int-p'. Some functions that work on integers (e.g. the comparison functions <, <=, =, /=, etc. and the arithmetic functions +, -, *, etc.) accept characters and implicitly convert them into integers. In general, functions that work on characters also accept char-ints and implicitly convert them into characters. WARNING: Neither of these behaviors is very desirable, and they are maintained for backward compatibility with old E-Lisp programs that confounded characters and integers willy-nilly. These behaviors may change in the future; therefore, do not rely on them. Instead, use the character-specific functions such as `char='. arguments: (OBJECT) Fchar-to-int Convert a character into an equivalent integer. The resulting integer will always be non-negative. The integers in the range 0 - 255 map to characters as follows: 0 - 31 Control set 0 32 - 127 ASCII 128 - 159 Control set 1 160 - 255 Right half of ISO-8859-1 If support for Mule does not exist, these are the only valid character values. When Mule support exists, the values assigned to other characters may vary depending on the particular version of XEmacs, the order in which character sets were loaded, etc., and you should not depend on them. arguments: (CH) Fint-to-char Convert an integer into the equivalent character. Not all integers correspond to valid characters; use `char-int-p' to determine whether this is the case. If the integer cannot be converted, nil is returned. arguments: (INTEGER) Fchar-int-p t if OBJECT is an integer that can be converted into a character. See `char-to-int'. arguments: (OBJECT) Fchar-or-char-int-p t if OBJECT is a character or an integer that can be converted into one. arguments: (OBJECT) Fchar-or-string-p t if OBJECT is a character (or a char-int) or a string. It is semi-hateful that we allow a char-int here, as it goes against the name of this function, but it makes the most sense considering the other steps we take to maintain compatibility with the old character/integer confoundedness in older versions of E-Lisp. arguments: (OBJECT) Fintegerp t if OBJECT is an integer. arguments: (OBJECT) Finteger-or-marker-p t if OBJECT is an integer or a marker (editor pointer). arguments: (OBJECT) Finteger-or-char-p t if OBJECT is an integer or a character. arguments: (OBJECT) Finteger-char-or-marker-p t if OBJECT is an integer, character or a marker (editor pointer). arguments: (OBJECT) Fnatnump t if OBJECT is a nonnegative integer. arguments: (OBJECT) Fbitp t if OBJECT is a bit (0 or 1). arguments: (OBJECT) Fnumberp t if OBJECT is a number (floating point or integer). arguments: (OBJECT) Fnumber-or-marker-p t if OBJECT is a number or a marker. arguments: (OBJECT) Fnumber-char-or-marker-p t if OBJECT is a number, character or a marker. arguments: (OBJECT) Ffloatp t if OBJECT is a floating point number. arguments: (OBJECT) Ftype-of Return a symbol representing the type of OBJECT. arguments: (OBJECT) Fcar Return the car of LIST. If arg is nil, return nil. Error if arg is not nil and not a cons cell. See also `car-safe'. arguments: (LIST) Fcar-safe Return the car of OBJECT if it is a cons cell, or else nil. arguments: (OBJECT) Fcdr Return the cdr of LIST. If arg is nil, return nil. Error if arg is not nil and not a cons cell. See also `cdr-safe'. arguments: (LIST) Fcdr-safe Return the cdr of OBJECT if it is a cons cell, or else nil. arguments: (OBJECT) Fsetcar Set the car of CONSCELL to be NEWCAR. Returns NEWCAR. arguments: (CONSCELL NEWCAR) Fsetcdr Set the cdr of CONSCELL to be NEWCDR. Returns NEWCDR. arguments: (CONSCELL NEWCDR) Findirect-function Return the function at the end of OBJECT's function chain. If OBJECT is a symbol, follow all function indirections and return the final function binding. If OBJECT is not a symbol, just return it. Signal a void-function error if the final symbol is unbound. Signal a cyclic-function-indirection error if there is a loop in the function chain of symbols. arguments: (OBJECT) Faref Return the element of ARRAY at index INDEX. ARRAY may be a vector, bit vector, string, or byte-code object. IDX starts at 0. arguments: (ARRAY IDX) Faset Store into the element of ARRAY at index IDX the value NEWVAL. ARRAY may be a vector, bit vector, or string. IDX starts at 0. arguments: (ARRAY IDX NEWVAL) Fcompiled-function-instructions Return the byte-opcode string of the compiled-function object. arguments: (FUNCTION) Fcompiled-function-constants Return the constants vector of the compiled-function object. arguments: (FUNCTION) Fcompiled-function-stack-depth Return the max stack depth of the compiled-function object. arguments: (FUNCTION) Fcompiled-function-arglist Return the argument list of the compiled-function object. arguments: (FUNCTION) Fcompiled-function-interactive Return the interactive spec of the compiled-function object, or nil. If non-nil, the return value will be a list whose first element is `interactive' and whose second element is the interactive spec. arguments: (FUNCTION) Fcompiled-function-doc-string Return the doc string of the compiled-function object, if available. Functions that had their doc strings snarfed into the DOC file will have an integer returned instead of a string. arguments: (FUNCTION) Fcompiled-function-annotation Return the annotation of the compiled-function object, or nil. The annotation is a piece of information indicating where this compiled-function object came from. Generally this will be a symbol naming a function; or a string naming a file, if the compiled-function object was not defined in a function; or nil, if the compiled-function object was not created as a result of a `load'. arguments: (FUNCTION) Fcompiled-function-domain Return the domain of the compiled-function object, or nil. This is only meaningful if I18N3 was enabled when emacs was compiled. arguments: (FUNCTION) F= T if two args, both numbers, characters or markers, are equal. arguments: (NUM1 NUM2) F< T if first arg is less than second arg. Both must be numbers, characters or markers. arguments: (NUM1 NUM2) F> T if first arg is greater than second arg. Both must be numbers, characters or markers. arguments: (NUM1 NUM2) F<= T if first arg is less than or equal to second arg. Both must be numbers, characters or markers. arguments: (NUM1 NUM2) F>= T if first arg is greater than or equal to second arg. Both must be numbers, characters or markers. arguments: (NUM1 NUM2) F/= T if first arg is not equal to second arg. Both must be numbers, characters or markers. arguments: (NUM1 NUM2) Fzerop T if NUMBER is zero. arguments: (NUMBER) Fnumber-to-string Convert NUM to a string by printing it in decimal. Uses a minus sign if negative. NUM may be an integer or a floating point number. arguments: (NUM) Fstring-to-number Convert STRING to a number by parsing it as a decimal number. This parses both integers and floating point numbers. It ignores leading spaces and tabs. If BASE, interpret STRING as a number in that base. If BASE isn't present, base 10 is used. BASE must be between 2 and 16 (inclusive). Floating point numbers always use base 10. arguments: (STRING &optional BASE) F+ Return sum of any number of arguments. The arguments should all be numbers, characters or markers.F- Negate number or subtract numbers, characters or markers. With one arg, negates it. With more than one arg, subtracts all but the first from the first.F* Return product of any number of arguments. The arguments should all be numbers, characters or markers.F/ Return first argument divided by all the remaining arguments. The arguments must be numbers, characters or markers.F% Return remainder of first arg divided by second. Both must be integers, characters or markers. arguments: (NUM1 NUM2) Fmod Return X modulo Y. The result falls between zero (inclusive) and Y (exclusive). Both X and Y must be numbers, characters or markers. If either argument is a float, a float will be returned. arguments: (X Y) Fmax Return largest of all the arguments. All arguments must be numbers, characters or markers. The value is always a number; markers and characters are converted to numbers.Fmin Return smallest of all the arguments. All arguments must be numbers, characters or markers. The value is always a number; markers and characters are converted to numbers.Flogand Return bitwise-and of all the arguments. Arguments may be integers, or markers or characters converted to integers.Flogior Return bitwise-or of all the arguments. Arguments may be integers, or markers or characters converted to integers.Flogxor Return bitwise-exclusive-or of all the arguments. Arguments may be integers, or markers or characters converted to integers.Fash Return VALUE with its bits shifted left by COUNT. If COUNT is negative, shifting is actually to the right. In this case, the sign bit is duplicated. arguments: (VALUE COUNT) Flsh Return VALUE with its bits shifted left by COUNT. If COUNT is negative, shifting is actually to the right. In this case, zeros are shifted in on the left. arguments: (VALUE COUNT) F1+ Return NUMBER plus one. NUMBER may be a number or a marker. Markers and characters are converted to integers. arguments: (NUMBER) F1- Return NUMBER minus one. NUMBER may be a number or a marker. Markers and characters are converted to integers. arguments: (NUMBER) Flognot Return the bitwise complement of NUMBER. NUMBER must be an integer. arguments: (NUMBER) Fweak-list-p Return non-nil if OBJECT is a weak list. arguments: (OBJECT) Fmake-weak-list Create a new weak list. A weak list object is an object that contains a list. This list behaves like any other list except that its elements do not count towards garbage collection -- if the only pointer to an object in inside a weak list (other than pointers in similar objects such as weak hash tables), the object is garbage collected and automatically removed from the list. This is used internally, for example, to manage the list holding the children of an extent -- an extent that is unused but has a parent will still be reclaimed, and will automatically be removed from its parent's list of children. Optional argument TYPE specifies the type of the weak list, and defaults to `simple'. Recognized types are `simple' Objects in the list disappear if not pointed to. `assoc' Objects in the list disappear if they are conses and either the car or the cdr of the cons is not pointed to. `key-assoc' Objects in the list disappear if they are conses and the car is not pointed to. `value-assoc' Objects in the list disappear if they are conses and the cdr is not pointed to. arguments: (&optional TYPE) Fweak-list-type Return the type of the given weak-list object. arguments: (WEAK) Fweak-list-list Return the list contained in a weak-list object. arguments: (WEAK) Fset-weak-list-list Change the list contained in a weak-list object. arguments: (WEAK NEW-LIST) Vdebug-issue-ebola-notices If non-nil, note when your code may be suffering from char-int confoundance. That is to say, if XEmacs encounters a usage of `eq', `memq', `equal', etc. where a int and a char with the same value are being compared, it will issue a notice on stderr to this effect, along with a backtrace. In such situations, the result would be different in XEmacs 19 versus XEmacs 20, and you probably don't want this. Note that in order to see these notices, you have to byte compile your code under XEmacs 20 -- any code byte-compiled under XEmacs 19 will have its chars and ints all confounded in the byte code, making it impossible to accurately determine Ebola infection.Vdebug-ebola-backtrace-length Length (in stack frames) of short backtrace printed out in Ebola notices. See `debug-issue-ebola-notices'.Fvalid-device-class-p Given a DEVICE-CLASS, return t if it is valid. Valid classes are 'color, 'grayscale, and 'mono. arguments: (DEVICE-CLASS) Fdevice-class-list Return a list of valid device classes. arguments: () Fdfw-device Given a device, frame, or window, return the associated device. Return nil otherwise. arguments: (OBJ) Fselected-device Return the device which is currently active. If optional CONSOLE is non-nil, return the device that would be currently active if CONSOLE were the selected console. arguments: (&optional CONSOLE) Fselect-device Select the device DEVICE. Subsequent editing commands apply to its console, selected frame, and selected window. The selection of DEVICE lasts until the next time the user does something to select a different device, or until the next time this function is called. arguments: (DEVICE) Fset-device-selected-frame Set the selected frame of device object DEVICE to FRAME. If DEVICE is nil, the selected device is used. If DEVICE is the selected device, this makes FRAME the selected frame. arguments: (DEVICE FRAME) Fdevicep Return non-nil if OBJECT is a device. arguments: (OBJECT) Fdevice-live-p Return non-nil if OBJECT is a device that has not been deleted. arguments: (OBJECT) Fdevice-name Return the name of the specified device. DEVICE defaults to the selected device if omitted. arguments: (&optional DEVICE) Fdevice-connection Return the connection of the specified device. DEVICE defaults to the selected device if omitted. arguments: (&optional DEVICE) Fdevice-console Return the console of the specified device. DEVICE defaults to the selected device if omitted. arguments: (&optional DEVICE) Ffind-device Look for an existing device attached to connection CONNECTION. Return the device if found; otherwise, return nil. If TYPE is specified, only return devices of that type; otherwise, return devices of any type. (It is possible, although unlikely, that two devices of different types could have the same connection name; in such a case, the first device found is returned.) arguments: (CONNECTION &optional TYPE) Fget-device Look for an existing device attached to connection CONNECTION. Return the device if found; otherwise, signal an error. If TYPE is specified, only return devices of that type; otherwise, return devices of any type. (It is possible, although unlikely, that two devices of different types could have the same connection name; in such a case, the first device found is returned.) arguments: (CONNECTION &optional TYPE) Fmake-device Create a new device of type TYPE, attached to connection CONNECTION. The valid values for CONNECTION are device-specific; however, CONNECTION is generally a string. (Specifically, for X devices, CONNECTION should be a display specification such as "foo:0", and for TTY devices, CONNECTION should be the filename of a TTY device file, such as "/dev/ttyp4", or nil to refer to XEmacs' standard input/output.) PROPS, if specified, should be a plist of properties controlling device creation. If CONNECTION specifies an already-existing device connection, that device is simply returned; no new device is created, and PROPS have no effect. arguments: (TYPE CONNECTION &optional PROPS) Fdelete-device Delete DEVICE, permanently eliminating it from use. Normally, you cannot delete the last non-minibuffer-only frame (you must use `save-buffers-kill-emacs' or `kill-emacs'). However, if optional second argument FORCE is non-nil, you can delete the last frame. (This will automatically call `save-buffers-kill-emacs'.) arguments: (DEVICE &optional FORCE) Fdevice-frame-list Return a list of all frames on DEVICE. If DEVICE is nil, the selected device will be used. arguments: (&optional DEVICE) Fdevice-class Return the class (color behavior) of DEVICE. This will be one of 'color, 'grayscale, or 'mono. arguments: (&optional DEVICE) Fset-device-class Set the class (color behavior) of DEVICE. CLASS should be one of 'color, 'grayscale, or 'mono. This is only allowed on device such as TTY devices, where the color behavior cannot necessarily be determined automatically. arguments: (DEVICE CLASS) Fdevice-pixel-width Return the width in pixels of DEVICE, or nil if unknown. arguments: (&optional DEVICE) Fdevice-pixel-height Return the height in pixels of DEVICE, or nil if unknown. arguments: (&optional DEVICE) Fdevice-mm-width Return the width in millimeters of DEVICE, or nil if unknown. arguments: (&optional DEVICE) Fdevice-mm-height Return the height in millimeters of DEVICE, or nil if unknown. arguments: (&optional DEVICE) Fdevice-bitplanes Return the number of bitplanes of DEVICE, or nil if unknown. arguments: (&optional DEVICE) Fdevice-color-cells Return the number of color cells of DEVICE, or nil if unknown. arguments: (&optional DEVICE) Fset-device-baud-rate Set the output baud rate of DEVICE to RATE. On most systems, changing this value will affect the amount of padding and other strategic decisions made during redisplay. arguments: (DEVICE RATE) Fdevice-baud-rate Return the output baud rate of DEVICE. arguments: (&optional DEVICE) Vcreate-device-hook Function or functions to call when a device is created. One argument, the newly-created device. This is called after the first frame has been created, but before calling the `create-frame-hook'. Note that in general the device will not be selected.Vdelete-device-hook Function or functions to call when a device is deleted. One argument, the to-be-deleted device.Fdirectory-files Return a list of names of files in DIRECTORY. There are four optional arguments: If FULL is non-nil, absolute pathnames of the files are returned. If MATCH is non-nil, only pathnames containing that regexp are returned. If NOSORT is non-nil, the list is not sorted--its order is unpredictable. NOSORT is useful if you plan to sort the result yourself. If FILES-ONLY is the symbol t, then only the "files" in the directory will be returned; subdirectories will be excluded. If FILES-ONLY is not nil and not t, then only the subdirectories will be returned. Otherwise, if FILES-ONLY is nil (the default) then both files and subdirectories will be returned. arguments: (DIRNAME &optional FULL MATCH NOSORT FILES-ONLY) Ffile-name-completion Complete file name FILE in directory DIR. Returns the longest string common to all filenames in DIR that start with FILE. If there is only one and FILE matches it exactly, returns t. Returns nil if DIR contains no name starting with FILE. Filenames which end with any member of `completion-ignored-extensions' are not considered as possible completions for FILE unless there is no other possible completion. `completion-ignored-extensions' is not applied to the names of directories. arguments: (FILE DIRNAME) Ffile-name-all-completions Return a list of all completions of file name FILE in directory DIR. These are all file names in directory DIR which begin with FILE. Filenames which end with any member of `completion-ignored-extensions' are not considered as possible completions for FILE unless there is no other possible completion. `completion-ignored-extensions' is not applied to the names of directories. arguments: (FILE DIRNAME) Ffile-name-all-versions Return a list of all versions of file name FILE in directory DIR. arguments: (FILE DIRNAME) Ffile-version-limit Return the maximum number of versions allowed for FILE. Returns nil if the file cannot be opened or if there is no version limit. arguments: (FILENAME) Ffile-attributes Return a list of attributes of file FILENAME. Value is nil if specified file cannot be opened. Otherwise, list elements are: 0. t for directory, string (name linked to) for symbolic link, or nil. 1. Number of links to file. 2. File uid. 3. File gid. 4. Last access time, as a list of two integers. First integer has high-order 16 bits of time, second has low 16 bits. 5. Last modification time, likewise. 6. Last status change time, likewise. 7. Size in bytes. (-1, if number is out of range). 8. File modes, as a string of ten letters or dashes as in ls -l. 9. t iff file's gid would change if file were deleted and recreated. 10. inode number. 11. Device number. If file does not exist, returns nil. arguments: (FILENAME) Vcompletion-ignored-extensions *Completion ignores filenames ending in any string in this list. This variable does not affect lists of possible completions, but does affect the commands that actually do completions. It is used by the functions `file-name-completion' and `file-name-all-completions'.Fdocumentation Return the documentation string of FUNCTION. Unless a non-nil second argument is given, the string is passed through `substitute-command-keys'. arguments: (FUNCTION &optional RAW) Fdocumentation-property Return the documentation string that is SYMBOL's PROP property. This is like `get', but it can refer to strings stored in the `doc-directory/DOC' file; and if the value is a string, it is passed through `substitute-command-keys'. A non-nil third argument avoids this translation. arguments: (SYM PROP &optional RAW) FSnarf-documentation Used during Emacs initialization, before dumping runnable Emacs, to find pointers to doc strings stored in `.../lib-src/DOC' and record them in function definitions. One arg, FILENAME, a string which does not include a directory. The file is written to `../lib-src', and later found in `exec-directory' when doc strings are referred to in the dumped Emacs. arguments: (FILENAME) FVerify-documentation Used to make sure everything went well with Snarf-documentation. Writes to stderr if not. arguments: () Fsubstitute-command-keys Substitute key descriptions for command names in STRING. Return a new string which is STRING with substrings of the form \=\[COMMAND] replaced by either: a keystroke sequence that will invoke COMMAND, or "M-x COMMAND" if COMMAND is not on any keys. Substrings of the form \=\{MAPVAR} are replaced by summaries (made by describe-bindings) of the value of MAPVAR, taken as a keymap. Substrings of the form \=\<MAPVAR> specify to use the value of MAPVAR as the keymap for future \=\[COMMAND] substrings. \=\= quotes the following character and is discarded; thus, \=\=\=\= puts \=\= into the output, and \=\=\=\[ puts \=\[ into the output. arguments: (STR) Vinternal-doc-file-name Name of file containing documentation strings of built-in symbols.Fchar-to-string Convert arg CH to a one-character string containing that character. arguments: (CH) Fstring-to-char Convert arg STRING to a character, the first character of that string. An empty string will return the constant `nil'. arguments: (STR) Fpoint Return value of point, as an integer. Beginning of buffer is position (point-min). If BUFFER is nil, the current buffer is assumed. arguments: (&optional BUFFER) Fpoint-marker Return value of point, as a marker object. This marker is a copy; you may modify it with reckless abandon. If optional argument DONT-COPY-P is non-nil, then it returns the real point-marker; modifying the position of this marker will move point. It is illegal to change the buffer of it, or make it point nowhere. If BUFFER is nil, the current buffer is assumed. arguments: (&optional DONT-COPY-P BUFFER) Fgoto-char Set point to POSITION, a number or marker. Beginning of buffer is position (point-min), end is (point-max). If BUFFER is nil, the current buffer is assumed. Return value of POSITION, as an integer. arguments: (POSITION &optional BUFFER) Fregion-beginning Return position of beginning of region in BUFFER, as an integer. If BUFFER is nil, the current buffer is assumed. arguments: (&optional BUFFER) Fregion-end Return position of end of region in BUFFER, as an integer. If BUFFER is nil, the current buffer is assumed. arguments: (&optional BUFFER) Fmark-marker Return this buffer's mark, as a marker object. If `zmacs-regions' is true, then this returns nil unless the region is currently in the active (highlighted) state. If optional argument FORCE is t, this returns the mark (if there is one) regardless of the zmacs-region state. You should *generally* not use the mark unless the region is active, if the user has expressed a preference for the zmacs-region model. Watch out! Moving this marker changes the mark position. If you set the marker not to point anywhere, the buffer will have no mark. If BUFFER is nil, the current buffer is assumed. arguments: (&optional FORCE BUFFER) Fsave-excursion Save point, mark, and current buffer; execute BODY; restore those things. Executes BODY just like `progn'. The values of point, mark and the current buffer are restored even in case of abnormal exit (throw or error).Fsave-current-buffer Save the current buffer; execute BODY; restore the current buffer. Executes BODY just like `progn'.Fbuffer-size Return the number of characters in BUFFER. If BUFFER is nil, the current buffer is assumed. arguments: (&optional BUFFER) Fpoint-min Return the minimum permissible value of point in BUFFER. This is 1, unless narrowing (a buffer restriction) is in effect. If BUFFER is nil, the current buffer is assumed. arguments: (&optional BUFFER) Fpoint-min-marker Return a marker to the minimum permissible value of point in BUFFER. This is the beginning, unless narrowing (a buffer restriction) is in effect. If BUFFER is nil, the current buffer is assumed. arguments: (&optional BUFFER) Fpoint-max Return the maximum permissible value of point in BUFFER. This is (1+ (buffer-size)), unless narrowing (a buffer restriction) is in effect, in which case it is less. If BUFFER is nil, the current buffer is assumed. arguments: (&optional BUFFER) Fpoint-max-marker Return a marker to the maximum permissible value of point BUFFER. This is (1+ (buffer-size)), unless narrowing (a buffer restriction) is in effect, in which case it is less. If BUFFER is nil, the current buffer is assumed. arguments: (&optional BUFFER) Ffollowing-char Return the character following point. At the end of the buffer or accessible region, return 0. If BUFFER is nil, the current buffer is assumed. arguments: (&optional BUFFER) Fpreceding-char Return the character preceding point. At the beginning of the buffer or accessible region, return 0. If BUFFER is nil, the current buffer is assumed. arguments: (&optional BUFFER) Fbobp Return T if point is at the beginning of the buffer. If the buffer is narrowed, this means the beginning of the narrowed part. If BUFFER is nil, the current buffer is assumed. arguments: (&optional BUFFER) Feobp Return T if point is at the end of the buffer. If the buffer is narrowed, this means the end of the narrowed part. If BUFFER is nil, the current buffer is assumed. arguments: (&optional BUFFER) Fbolp Return T if point is at the beginning of a line. If BUFFER is nil, the current buffer is assumed. arguments: (&optional BUFFER) Feolp Return T if point is at the end of a line. `End of a line' includes point being at the end of the buffer. If BUFFER is nil, the current buffer is assumed. arguments: (&optional BUFFER) Fchar-after Return character in BUFFER at position POS. POS is an integer or a buffer pointer. If POS is out of range, the value is nil. If BUFFER is nil, the current buffer is assumed. if POS is nil, the value of point is assumed. arguments: (&optional POS BUFFER) Fchar-before Return character in BUFFER before position POS. POS is an integer or a buffer pointer. If POS is out of range, the value is nil. If BUFFER is nil, the current buffer is assumed. if POS is nil, the value of point is assumed. arguments: (&optional POS BUFFER) Fuser-login-name Return the name under which the user logged in, as a string. This is based on the effective uid, not the real uid. Also, if the environment variable LOGNAME or USER is set, that determines the value of this function. If the optional argument UID is present, then environment variables are ignored and this function returns the login name for that UID, or nil. arguments: (&optional UID) Fuser-real-login-name Return the name of the user's real uid, as a string. This ignores the environment variables LOGNAME and USER, so it differs from `user-login-name' when running under `su'. arguments: () Fuser-uid Return the effective uid of Emacs, as an integer. arguments: () Fuser-real-uid Return the real uid of Emacs, as an integer. arguments: () Fuser-full-name Return the full name of the user logged in, as a string. If the optional argument USER is given, then the full name for that user is returned, or nil. USER may be either a login name or a uid. arguments: (&optional USER) Fsystem-name Return the name of the machine you are running on, as a string. arguments: () Femacs-pid Return the process ID of Emacs, as an integer. arguments: () Fcurrent-time Return the current time, as the number of seconds since 1970-01-01 00:00:00. The time is returned as a list of three integers. The first has the most significant 16 bits of the seconds, while the second has the least significant 16 bits. The third integer gives the microsecond count. The microsecond count is zero on systems that do not provide resolution finer than a second. arguments: () Fcurrent-process-time Return the amount of time used by this XEmacs process so far. The return value is a list of three floating-point numbers, expressing the user, system, and real times used by the process. The user time measures the time actually spent by the CPU executing the code in this process. The system time measures time spent by the CPU executing kernel code on behalf of this process (e.g. I/O requests made by the process). Note that the user and system times measure processor time, as opposed to real time, and only accrue when the processor is actually doing something: Time spent in an idle wait (waiting for user events to come in or for I/O on a disk drive or other device to complete) does not count. Thus, the user and system times will often be considerably less than the real time. Some systems do not allow the user and system times to be distinguished. In this case, the user time will be the total processor time used by the process, and the system time will be 0. Some systems do not allow the real and processor times to be distinguished. In this case, the user and real times will be the same and the system time will be 0. arguments: () Fformat-time-string Use FORMAT-STRING to format the time TIME. TIME is specified as (HIGH LOW . IGNORED) or (HIGH . LOW), as from `current-time' and `file-attributes'. If TIME is not specified it defaults to the current time. FORMAT-STRING may contain %-sequences to substitute parts of the time. %a is replaced by the abbreviated name of the day of week. %A is replaced by the full name of the day of week. %b is replaced by the abbreviated name of the month. %B is replaced by the full name of the month. %c is a synonym for "%x %X". %C is a locale-specific synonym, which defaults to "%A, %B %e, %Y" in the C locale. %d is replaced by the day of month, zero-padded. %D is a synonym for "%m/%d/%y". %e is replaced by the day of month, blank-padded. %h is a synonym for "%b". %H is replaced by the hour (00-23). %I is replaced by the hour (00-12). %j is replaced by the day of the year (001-366). %k is replaced by the hour (0-23), blank padded. %l is replaced by the hour (1-12), blank padded. %m is replaced by the month (01-12). %M is replaced by the minute (00-59). %n is a synonym for "\n". %p is replaced by AM or PM, as appropriate. %r is a synonym for "%I:%M:%S %p". %R is a synonym for "%H:%M". %S is replaced by the second (00-60). %t is a synonym for "\t". %T is a synonym for "%H:%M:%S". %U is replaced by the week of the year (00-53), first day of week is Sunday. %w is replaced by the day of week (0-6), Sunday is day 0. %W is replaced by the week of the year (00-53), first day of week is Monday. %x is a locale-specific synonym, which defaults to "%D" in the C locale. %X is a locale-specific synonym, which defaults to "%T" in the C locale. %y is replaced by the year without century (00-99). %Y is replaced by the year with century. %Z is replaced by the time zone abbreviation. The number of options reflects the `strftime' function. BUG: If the charset used by the current locale is not ISO 8859-1, the characters appearing in the day and month names may be incorrect. arguments: (FORMAT-STRING &optional -TIME) Fdecode-time Decode a time value as (SEC MINUTE HOUR DAY MONTH YEAR DOW DST ZONE). The optional SPECIFIED-TIME should be a list of (HIGH LOW . IGNORED) or (HIGH . LOW), as from `current-time' and `file-attributes', or `nil' to use the current time. The list has the following nine members: SEC is an integer between 0 and 60; SEC is 60 for a leap second, which only some operating systems support. MINUTE is an integer between 0 and 59. HOUR is an integer between 0 and 23. DAY is an integer between 1 and 31. MONTH is an integer between 1 and 12. YEAR is an integer indicating the four-digit year. DOW is the day of week, an integer between 0 and 6, where 0 is Sunday. DST is t if daylight savings time is effect, otherwise nil. ZONE is an integer indicating the number of seconds east of Greenwich. (Note that Common Lisp has different meanings for DOW and ZONE.) arguments: (&optional SPECIFIED-TIME) Fencode-time Convert SECOND, MINUTE, HOUR, DAY, MONTH, YEAR and ZONE to internal time. This is the reverse operation of `decode-time', which see. ZONE defaults to the current time zone rule. This can be a string (as from `set-time-zone-rule'), or it can be a list (as from `current-time-zone') or an integer (as from `decode-time') applied without consideration for daylight savings time. You can pass more than 7 arguments; then the first six arguments are used as SECOND through YEAR, and the *last* argument is used as ZONE. The intervening arguments are ignored. This feature lets (apply 'encode-time (decode-time ...)) work. Out-of-range values for SEC, MINUTE, HOUR, DAY, or MONTH are allowed; for example, a DAY of 0 means the day preceding the given month. Year numbers less than 100 are treated just like other year numbers. If you want them to stand for years in this century, you must do that yourself.Fcurrent-time-string Return the current time, as a human-readable string. Programs can use this function to decode a time, since the number of columns in each field is fixed. The format is `Sun Sep 16 01:03:52 1973'. If an argument is given, it specifies a time to format instead of the current time. The argument should have the form: (HIGH . LOW) or the form: (HIGH LOW . IGNORED). Thus, you can use times obtained from `current-time' and from `file-attributes'. arguments: (&optional SPECIFIED-TIME) Fcurrent-time-zone Return the offset and name for the local time zone. This returns a list of the form (OFFSET NAME). OFFSET is an integer number of seconds ahead of UTC (east of Greenwich). A negative value means west of Greenwich. NAME is a string giving the name of the time zone. If an argument is given, it specifies when the time zone offset is determined instead of using the current time. The argument should have the form: (HIGH . LOW) or the form: (HIGH LOW . IGNORED). Thus, you can use times obtained from `current-time' and from `file-attributes'. Some operating systems cannot provide all this information to Emacs; in this case, `current-time-zone' returns a list containing nil for the data it can't find. arguments: (&optional SPECIFIED-TIME) Fset-time-zone-rule Set the local time zone using TZ, a string specifying a time zone rule. If TZ is nil, use implementation-defined default time zone information. arguments: (TZ) Finsert Insert the arguments, either strings or characters, at point. Point moves forward so that it ends up after the inserted text. Any other markers at the point of insertion remain before the text. If a string has non-null string-extent-data, new extents will be created.Finsert-before-markers Insert strings or characters at point, relocating markers after the text. Point moves forward so that it ends up after the inserted text. Any other markers at the point of insertion also end up after the text.Finsert-string Insert STRING into BUFFER at BUFFER's point. Point moves forward so that it ends up after the inserted text. Any other markers at the point of insertion remain before the text. If a string has non-null string-extent-data, new extents will be created. BUFFER defaults to the current buffer. arguments: (STRING &optional BUFFER) Finsert-char Insert COUNT (second arg) copies of CHR (first arg). Point and all markers are affected as in the function `insert'. COUNT defaults to 1 if omitted. The optional third arg IGNORED is INHERIT under FSF Emacs. This is highly bogus, however, and XEmacs always behaves as if `t' were passed to INHERIT. The optional fourth arg BUFFER specifies the buffer to insert the text into. If BUFFER is nil, the current buffer is assumed. arguments: (CHR &optional COUNT IGNORED BUFFER) Fbuffer-substring Return the contents of part of BUFFER as a string. The two arguments START and END are character positions; they can be in either order. If omitted, they default to the beginning and end of BUFFER, respectively. If there are duplicable extents in the region, the string remembers them in its extent data. If BUFFER is nil, the current buffer is assumed. arguments: (&optional START END BUFFER) Finsert-buffer-substring Insert before point a substring of the contents of buffer BUFFER. BUFFER may be a buffer or a buffer name. Arguments START and END are character numbers specifying the substring. They default to the beginning and the end of BUFFER. arguments: (BUFFER &optional START END) Fcompare-buffer-substrings Compare two substrings of two buffers; return result as number. the value is -N if first string is less after N-1 chars, +N if first string is greater after N-1 chars, or 0 if strings match. Each substring is represented as three arguments: BUFFER, START and END. That makes six args in all, three for each substring. The value of `case-fold-search' in the current buffer determines whether case is significant or ignored. arguments: (BUFFER1 START1 END1 BUFFER2 START2 END2) Fsubst-char-in-region From START to END, replace FROMCHAR with TOCHAR each time it occurs. If optional arg NOUNDO is non-nil, don't record this change for undo and don't mark the buffer as really changed. arguments: (START END FROMCHAR TOCHAR &optional NOUNDO) Ftranslate-region From START to END, translate characters according to TABLE. TABLE is a string; the Nth character in it is the mapping for the character with code N. Returns the number of characters changed. arguments: (START END TABLE) Fdelete-region Delete the text between point and mark. When called from a program, expects two arguments, positions (integers or markers) specifying the stretch to be deleted. If BUFFER is nil, the current buffer is assumed. arguments: (B E &optional BUFFER) Fwiden Remove restrictions (narrowing) from BUFFER. This allows the buffer's full text to be seen and edited. If BUFFER is nil, the current buffer is assumed. arguments: (&optional BUFFER) Fnarrow-to-region Restrict editing in BUFFER to the current region. The rest of the text becomes temporarily invisible and untouchable but is not deleted; if you save the buffer in a file, the invisible text is included in the file. \[widen] makes all visible again. If BUFFER is nil, the current buffer is assumed. See also `save-restriction'. When calling from a program, pass two arguments; positions (integers or markers) bounding the text that should remain visible. arguments: (B E &optional BUFFER) Fsave-restriction Execute BODY, saving and restoring current buffer's restrictions. The buffer's restrictions make parts of the beginning and end invisible. (They are set up with `narrow-to-region' and eliminated with `widen'.) This special form, `save-restriction', saves the current buffer's restrictions when it is entered, and restores them when it is exited. So any `narrow-to-region' within BODY lasts only until the end of the form. The old restrictions settings are restored even in case of abnormal exit (throw or error). The value returned is the value of the last form in BODY. `save-restriction' can get confused if, within the BODY, you widen and then make changes outside the area within the saved restrictions. Note: if you are using both `save-excursion' and `save-restriction', use `save-excursion' outermost: (save-excursion (save-restriction ...))Fformat Format a string out of a control-string and arguments. The first argument is a control string. The other arguments are substituted into it to make the result, a string. It may contain %-sequences meaning to substitute the next argument. %s means print all objects as-is, using `princ'. %S means print all objects as s-expressions, using `prin1'. %d or %i means print as an integer in decimal (%o octal, %x lowercase hex, %X uppercase hex). %c means print as a single character. %f means print as a floating-point number in fixed notation (e.g. 785.200). %e or %E means print as a floating-point number in scientific notation (e.g. 7.85200e+03). %g or %G means print as a floating-point number in "pretty format"; depending on the number, either %f or %e/%E format will be used, and trailing zeroes are removed from the fractional part. The argument used for all but %s and %S must be a number. It will be converted to an integer or a floating-point number as necessary. %$ means reposition to read a specific numbered argument; for example, %3$s would apply the `%s' to the third argument after the control string, and the next format directive would use the fourth argument, the following one the fifth argument, etc. (There must be a positive integer between the % and the $). Zero or more of the flag characters `-', `+', ` ', `0', and `#' may be specified between the optional repositioning spec and the conversion character; see below. An optional minimum field width may be specified after any flag characters and before the conversion character; it specifies the minimum number of characters that the converted argument will take up. Padding will be added on the left (or on the right, if the `-' flag is specified), as necessary. Padding is done with spaces, or with zeroes if the `0' flag is specified. If the field width is specified as `*', the field width is assumed to have been specified as an argument. Any repositioning specification that would normally specify the argument to be converted will now specify where to find this field width argument, not where to find the argument to be converted. If there is no repositioning specification, the normal next argument is used. The argument to be converted will be the next argument after the field width argument unless the precision is also specified as `*' (see below). An optional period character and precision may be specified after any minimum field width. It specifies the minimum number of digits to appear in %d, %i, %o, %x, and %X conversions (the number is padded on the left with zeroes as necessary); the number of digits printed after the decimal point for %f, %e, and %E conversions; the number of significant digits printed in %g and %G conversions; and the maximum number of non-padding characters printed in %s and %S conversions. The default precision for floating-point conversions is six. If the precision is specified as `*', the precision is assumed to have been specified as an argument. The argument used will be the next argument after the field width argument, if any. If the field width was not specified as an argument, any repositioning specification that would normally specify the argument to be converted will now specify where to find the precision argument. If there is no repositioning specification, the normal next argument is used. The ` ' and `+' flags mean prefix non-negative numbers with a space or plus sign, respectively. The `#' flag means print numbers in an alternate, more verbose format: octal numbers begin with zero; hex numbers begin with a 0x or 0X; a decimal point is printed in %f, %e, and %E conversions even if no numbers are printed after it; and trailing zeroes are not omitted in %g and %G conversions. Use %% to put a single % into the output.Fchar-equal Return t if two characters match, optionally ignoring case. Both arguments must be characters (i.e. NOT integers). Case is ignored if `case-fold-search' is non-nil in BUFFER. If BUFFER is nil, the current buffer is assumed. arguments: (C1 C2 &optional BUFFER) Fchar= Return t if two characters match, case is significant. Both arguments must be characters (i.e. NOT integers). The optional buffer argument is for symmetry and is ignored. arguments: (C1 C2 &optional BUFFER) Ftranspose-regions Transpose region START1 to END1 with START2 to END2. The regions may not be overlapping, because the size of the buffer is never changed in a transposition. Optional fifth arg LEAVE_MARKERS, if non-nil, means don't transpose any markers that happen to be located in the regions. (#### BUG: currently this function always acts as if LEAVE_MARKERS is non-nil.) Transposing beyond buffer boundaries is an error. arguments: (STARTR1 ENDR1 STARTR2 ENDR2 &optional LEAVE-MARKERS) Vzmacs-regions *Whether LISPM-style active regions should be used. This means that commands which operate on the region (the area between the point and the mark) will only work while the region is in the ``active'' state, which is indicated by highlighting. Executing most commands causes the region to not be in the active state, so (for example) \[kill-region] will only work immediately after activating the region. More specifically: - Commands which operate on the region only work if the region is active. - Only a very small set of commands cause the region to become active: Those commands whose semantics are to mark an area, like mark-defun. - The region is deactivated after each command that is executed, except that: - "Motion" commands do not change whether the region is active or not. set-mark-command (C-SPC) pushes a mark and activates the region. Moving the cursor with normal motion commands (C-n, C-p, etc) will cause the region between point and the recently-pushed mark to be highlighted. It will remain highlighted until some non-motion command is executed. exchange-point-and-mark (\[exchange-point-and-mark]) activates the region. So if you mark a region and execute a command that operates on it, you can reactivate the same region with \[exchange-point-and-mark] (or perhaps \[exchange-point-and-mark] \[exchange-point-and-mark]) to operate on it again. Generally, commands which push marks as a means of navigation (like beginning-of-buffer and end-of-buffer (M-< and M->)) do not activate the region. But commands which push marks as a means of marking an area of text (like mark-defun (\[mark-defun]), mark-word (\[mark-word]) or mark-whole-buffer (\[mark-whole-buffer])) do activate the region. The way the command loop actually works with regard to deactivating the region is as follows: - If the variable `zmacs-region-stays' has been set to t during the command just executed, the region is left alone (this is how the motion commands make the region stay around; see the `_' flag in the `interactive' specification). `zmacs-region-stays' is reset to nil before each command is executed. - If the function `zmacs-activate-region' has been called during the command just executed, the region is left alone. Very few functions should actually call this function. - Otherwise, if the region is active, the region is deactivated and the `zmacs-deactivate-region-hook' is called.Vzmacs-region-active-p Do not alter this. It is for internal use only.Vzmacs-region-stays Commands which do not wish to affect whether the region is currently highlighted should set this to t. Normally, the region is turned off after executing each command that did not explicitly turn it on with the function zmacs-activate-region. Setting this to true lets a command be non-intrusive. See the variable `zmacs-regions'.Vatomic-extent-goto-char-p Do not use this -- it will be going away soon. Indicates if `goto-char' has just been run. This information is allegedly needed to get the desired behavior for atomic extents and unfortunately is not available by any other means.Fhashtablep Return t if OBJ is a hashtable, else nil. arguments: (OBJ) Fmake-hashtable Make a hashtable of initial size SIZE. Comparison between keys is done with TEST-FUN, which must be one of `eq', `eql', or `equal'. The default is `eql'; i.e. two keys must be the same object (or have the same floating-point value, for floats) to be considered equivalent. See also `make-weak-hashtable', `make-key-weak-hashtable', and `make-value-weak-hashtable'. arguments: (SIZE &optional TEST-FUN) Fcopy-hashtable Make a new hashtable which contains the same keys and values as the given table. The keys and values will not themselves be copied. arguments: (OLD-TABLE) Fgethash Find hash value for KEY in HASHTABLE. If there is no corresponding value, return DEFAULT (defaults to nil). arguments: (KEY HASHTABLE &optional DEFAULT) Fremhash Remove hash value for KEY in HASHTABLE. arguments: (KEY HASHTABLE) Fputhash Hash KEY to VAL in HASHTABLE. arguments: (KEY VAL HASHTABLE) Fclrhash Remove all entries from HASHTABLE. arguments: (HASHTABLE) Fhashtable-fullness Return number of entries in HASHTABLE. arguments: (HASHTABLE) Fmaphash Map FUNCTION over entries in HASHTABLE, calling it with two args, each key and value in the table. arguments: (FUNCTION HASHTABLE) Fmake-weak-hashtable Make a fully weak hashtable of initial size SIZE. A weak hashtable is one whose pointers do not count as GC referents: for any key-value pair in the hashtable, if the only remaining pointer to either the key or the value is in a weak hash table, then the pair will be removed from the table, and the key and value collected. A non-weak hash table (or any other pointer) would prevent the object from being collected. You can also create semi-weak hashtables; see `make-key-weak-hashtable' and `make-value-weak-hashtable'. arguments: (SIZE &optional TEST-FUN) Fmake-key-weak-hashtable Make a key-weak hashtable of initial size SIZE. A key-weak hashtable is similar to a fully-weak hashtable (see `make-weak-hashtable') except that a key-value pair will be removed only if the key remains unmarked outside of weak hashtables. The pair will remain in the hashtable if the key is pointed to by something other than a weak hashtable, even if the value is not. arguments: (SIZE &optional TEST-FUN) Fmake-value-weak-hashtable Make a value-weak hashtable of initial size SIZE. A value-weak hashtable is similar to a fully-weak hashtable (see `make-weak-hashtable') except that a key-value pair will be removed only if the value remains unmarked outside of weak hashtables. The pair will remain in the hashtable if the value is pointed to by something other than a weak hashtable, even if the key is not. arguments: (SIZE &optional TEST-FUN) Finvocation-name Return the program name that was used to run XEmacs. Any directory names are omitted. arguments: () Finvocation-directory Return the directory name in which the Emacs executable was located. arguments: () Frunning-temacs-p True if running temacs. This means we are in the dumping stage. This is false during normal execution of the `xemacs' program, and becomes false once `run-emacs-from-temacs' is run. arguments: () Frun-emacs-from-temacs Do not call this. It will reinitialize your XEmacs. You'll be sorry.Fkill-emacs Exit the XEmacs job and kill it. Ask for confirmation, without argument. If ARG is an integer, return ARG as the exit program code. If ARG is a string, stuff it as keyboard input. The value of `kill-emacs-hook', if not void, is a list of functions (of no args), all of which are called before XEmacs is actually killed. arguments: (&optional ARG) Fdump-emacs-data Dump current state of XEmacs into data file FILENAME. This function exists on systems that use HAVE_SHM. arguments: (INTONAME) Fdump-emacs Dump current state of XEmacs into executable file FILENAME. Take symbols from SYMFILE (presumably the file you executed to run XEmacs). This is used in the file `loadup.el' when building XEmacs. Remember to set `command-line-processed' to nil before dumping if you want the dumped XEmacs to process its command line and announce itself normally when it is run. arguments: (INTONAME SYMNAME) Fnoninteractive Non-nil return value means XEmacs is running without interactive terminal. arguments: () Fquantify-start-recording-data Start recording Quantify data. arguments: () Fquantify-stop-recording-data Stop recording Quantify data. arguments: () Fquantify-clear-data Clear all Quantify data. arguments: () Vsuppress-early-error-handler-backtrace Non-nil means early error handler shouldn't print a backtraceVcommand-line-args Args passed by shell to XEmacs, as a list of strings.Vinvocation-name The program name that was used to run XEmacs. Any directory names are omitted.Vinvocation-directory The directory in which the XEmacs executable was found, to run it. The value is simply the program name if that directory's name is not known.Vsystem-type Value is symbol indicating type of operating system you are using.Vsystem-configuration Value is string indicating configuration XEmacs was built for.Vsystem-configuration-options String containing the configuration options XEmacs was built with.Vemacs-major-version Major version number of this version of Emacs, as an integer. Warning: this variable did not exist in Emacs versions earlier than: FSF Emacs: 19.23 XEmacs: 19.10Vemacs-minor-version Minor version number of this version of Emacs, as an integer. Warning: this variable did not exist in Emacs versions earlier than: FSF Emacs: 19.23 XEmacs: 19.10Vemacs-beta-version Beta number of this version of Emacs, as an integer. The value is nil if this is an officially released version of XEmacs. Warning: this variable does not exist in FSF Emacs or in XEmacs versions earlier than 20.3.Vxemacs-codename Codename of this version of Emacs (a string).Vpackage-path List of directories configured for package searching.Vnoninteractive Non-nil means XEmacs is running without interactive terminal.Vinhibit-package-init Set to non-nil when the package-path should not be searched at startup.Vemacs-priority Priority for XEmacs to run at. This value is effective only if set before XEmacs is dumped, and only if the XEmacs executable is installed with setuid to permit it to change priority. (XEmacs sets its uid back to the real uid.) Currently, you need to define SET_EMACS_PRIORITY in `config.h' before you compile XEmacs, to enable the code for this feature.For Eval args until one of them yields non-nil, then return that value. The remaining args are not evalled at all. If all args return nil, return nil.Fand Eval args until one of them yields nil, then return nil. The remaining args are not evalled at all. If no arg yields nil, return the last arg's value.Fif (if COND THEN ELSE...): if COND yields non-nil, do THEN, else do ELSE... Returns the value of THEN or the value of the last of the ELSE's. THEN must be one expression, but ELSE... can be zero or more expressions. If COND yields nil, and there are no ELSE's, the value is nil.Fcond (cond CLAUSES...): try each clause until one succeeds. Each clause looks like (CONDITION BODY...). CONDITION is evaluated and, if the value is non-nil, this clause succeeds: then the expressions in BODY are evaluated and the last one's value is the value of the cond-form. If no clause succeeds, cond returns nil. If a clause has one element, as in (CONDITION), CONDITION's value if non-nil is returned from the cond-form.Fprogn (progn BODY...): eval BODY forms sequentially and return value of last one.Fprog1 (prog1 FIRST BODY...): eval FIRST and BODY sequentially; value from FIRST. The value of FIRST is saved during the evaluation of the remaining args, whose values are discarded.Fprog2 (prog2 X Y BODY...): eval X, Y and BODY sequentially; value from Y. The value of Y is saved during the evaluation of the remaining args, whose values are discarded.Flet* (let* VARLIST BODY...): bind variables according to VARLIST then eval BODY. The value of the last form in BODY is returned. Each element of VARLIST is a symbol (which is bound to nil) or a list (SYMBOL VALUEFORM) (which binds SYMBOL to the value of VALUEFORM). Each VALUEFORM can refer to the symbols already bound by this VARLIST.Flet (let VARLIST BODY...): bind variables according to VARLIST then eval BODY. The value of the last form in BODY is returned. Each element of VARLIST is a symbol (which is bound to nil) or a list (SYMBOL VALUEFORM) (which binds SYMBOL to the value of VALUEFORM). All the VALUEFORMs are evalled before any symbols are bound.Fwhile (while TEST BODY...): if TEST yields non-nil, eval BODY... and repeat. The order of execution is thus TEST, BODY, TEST, BODY and so on until TEST returns nil.Fsetq (setq SYM VAL SYM VAL ...): set each SYM to the value of its VAL. The symbols SYM are variables; they are literal (not evaluated). The values VAL are expressions; they are evaluated. Thus, (setq x (1+ y)) sets `x' to the value of `(1+ y)'. The second VAL is not computed until after the first SYM is set, and so on; each VAL can use the new value of variables set earlier in the `setq'. The return value of the `setq' form is the value of the last VAL.Fquote Return the argument, without evaluating it. `(quote x)' yields `x'.Ffunction Like `quote', but preferred for objects which are functions. In byte compilation, `function' causes its argument to be compiled. `quote' cannot do that.Fdefun (defun NAME ARGLIST [DOCSTRING] BODY...): define NAME as a function. The definition is (lambda ARGLIST [DOCSTRING] BODY...). See also the function `interactive'.Fdefmacro (defmacro NAME ARGLIST [DOCSTRING] BODY...): define NAME as a macro. The definition is (macro lambda ARGLIST [DOCSTRING] BODY...). When the macro is called, as in (NAME ARGS...), the function (lambda ARGLIST BODY...) is applied to the list ARGS... as it appears in the expression, and the result should be a form to be evaluated instead of the original.Fdefvar (defvar SYMBOL INITVALUE DOCSTRING): define SYMBOL as a variable. You are not required to define a variable in order to use it, but the definition can supply documentation and an initial value in a way that tags can recognize. INITVALUE is evaluated, and used to set SYMBOL, only if SYMBOL's value is void. (However, when you evaluate a defvar interactively, it acts like a defconst: SYMBOL's value is always set regardless of whether it's currently void.) If SYMBOL is buffer-local, its default value is what is set; buffer-local values are not affected. INITVALUE and DOCSTRING are optional. If DOCSTRING starts with *, this variable is identified as a user option. This means that M-x set-variable and M-x edit-options recognize it. If INITVALUE is missing, SYMBOL's value is not set. In lisp-interaction-mode defvar is treated as defconst.Fdefconst (defconst SYMBOL INITVALUE DOCSTRING): define SYMBOL as a constant variable. The intent is that programs do not change this value, but users may. Always sets the value of SYMBOL to the result of evalling INITVALUE. If SYMBOL is buffer-local, its default value is what is set; buffer-local values are not affected. DOCSTRING is optional. If DOCSTRING starts with *, this variable is identified as a user option. This means that M-x set-variable and M-x edit-options recognize it. Note: do not use `defconst' for user options in libraries that are not normally loaded, since it is useful for users to be able to specify their own values for such variables before loading the library. Since `defconst' unconditionally assigns the variable, it would override the user's choice.Fuser-variable-p Return t if VARIABLE is intended to be set and modified by users. (The alternative is a variable used internally in a Lisp program.) Determined by whether the first character of the documentation for the variable is `*'. arguments: (VARIABLE) Fmacroexpand-internal Return result of expanding macros at top level of FORM. If FORM is not a macro call, it is returned unchanged. Otherwise, the macro is expanded and the expansion is considered in place of FORM. When a non-macro-call results, it is returned. The second optional arg ENVIRONMENT species an environment of macro definitions to shadow the loaded ones for use in file byte-compilation. arguments: (FORM &optional ENV) Fcatch (catch TAG BODY...): eval BODY allowing nonlocal exits using `throw'. TAG is evalled to get the tag to use. Then the BODY is executed. Within BODY, (throw TAG) with same tag exits BODY and exits this `catch'. If no throw happens, `catch' returns the value of the last BODY form. If a throw happens, it specifies the value to return from `catch'.Fthrow (throw TAG VALUE): throw to the catch for TAG and return VALUE from it. Both TAG and VALUE are evalled. arguments: (TAG VAL) Funwind-protect Do BODYFORM, protecting with UNWINDFORMS. Usage looks like (unwind-protect BODYFORM UNWINDFORMS...). If BODYFORM completes normally, its value is returned after executing the UNWINDFORMS. If BODYFORM exits nonlocally, the UNWINDFORMS are executed anyway.Fcondition-case Regain control when an error is signalled. Usage looks like (condition-case VAR BODYFORM HANDLERS...). executes BODYFORM and returns its value if no error happens. Each element of HANDLERS looks like (CONDITION-NAME BODY...) where the BODY is made of Lisp expressions. A handler is applicable to an error if CONDITION-NAME is one of the error's condition names. If an error happens, the first applicable handler is run. As a special case, a CONDITION-NAME of t matches all errors, even those without the `error' condition name on them (e.g. `quit'). The car of a handler may be a list of condition names instead of a single condition name. When a handler handles an error, control returns to the condition-case and the handler BODY... is executed with VAR bound to (SIGNALED-CONDITIONS . SIGNAL-DATA). VAR may be nil; then you do not get access to the signal information. The value of the last BODY form is returned from the condition-case. See also the function `signal' for more info. Note that at the time the condition handler is invoked, the Lisp stack and the current catches, condition-cases, and bindings have all been popped back to the state they were in just before the call to `condition-case'. This means that resignalling the error from within the handler will not result in an infinite loop. If you want to establish an error handler that is called with the Lisp stack, bindings, etc. as they were when `signal' was called, rather than when the handler was set, use `call-with-condition-handler'.Fcall-with-condition-handler Regain control when an error is signalled, without popping the stack. Usage looks like (call-with-condition-handler HANDLER FUNCTION &rest ARGS). This function is similar to `condition-case', but the handler is invoked with the same environment (Lisp stack, bindings, catches, condition-cases) that was current when `signal' was called, rather than when the handler was established. HANDLER should be a function of one argument, which is a cons of the args (SIG . DATA) that were passed to `signal'. It is invoked whenever `signal' is called (this differs from `condition-case', which allows you to specify which errors are trapped). If the handler function returns, `signal' continues as if the handler were never invoked. (It continues to look for handlers established earlier than this one, and invokes the standard error-handler if none is found.)Fsignal Signal a continuable error. Args are ERROR-SYMBOL, and associated DATA. An error symbol is a symbol defined using `define-error'. DATA should be a list. Its elements are printed as part of the error message. If the signal is handled, DATA is made available to the handler. See also the function `signal-error', and the functions to handle errors: `condition-case' and `call-with-condition-handler'. Note that this function can return, if the debugger is invoked and the user invokes the "return from signal" option. arguments: (ERROR-SYMBOL DATA) Fcommandp T if FUNCTION makes provisions for interactive calling. This means it contains a description for how to read arguments to give it. The value is nil for an invalid function or a symbol with no function definition. Interactively callable functions include -- strings and vectors (treated as keyboard macros) -- lambda-expressions that contain a top-level call to `interactive' -- autoload definitions made by `autoload' with non-nil fourth argument (i.e. the interactive flag) -- compiled-function objects with a non-nil `compiled-function-interactive' value -- subrs (built-in functions) that are interactively callable Also, a symbol satisfies `commandp' if its function definition does so. arguments: (FUNCTION) Fcommand-execute Execute CMD as an editor command. CMD must be an object that satisfies the `commandp' predicate. Optional second arg RECORD-FLAG is as in `call-interactively'. The argument KEYS specifies the value to use instead of (this-command-keys) when reading the arguments. arguments: (CMD &optional RECORD KEYS) Finteractive-p Return t if function in which this appears was called interactively. This means that the function was called with call-interactively (which includes being called as the binding of a key) and input is currently coming from the keyboard (not in keyboard macro). arguments: () Fautoload Define FUNCTION to autoload from FILE. FUNCTION is a symbol; FILE is a file name string to pass to `load'. Third arg DOCSTRING is documentation for the function. Fourth arg INTERACTIVE if non-nil says function can be called interactively. Fifth arg TYPE indicates the type of the object: nil or omitted says FUNCTION is a function, `keymap' says FUNCTION is really a keymap, and `macro' or t says FUNCTION is really a macro. Third through fifth args give info about the real definition. They default to nil. If FUNCTION is already defined other than as an autoload, this does nothing and returns nil. arguments: (FUNCTION FILE &optional DOCSTRING INTERACTIVE TYPE) Feval Evaluate FORM and return its value. arguments: (FORM) Ffuncall Call first argument as a function, passing remaining arguments to it. Thus, (funcall 'cons 'x 'y) returns (x . y).Ffunction-min-args Return the number of arguments a function may be called with. The function may be any form that can be passed to `funcall', any special form, or any macro. arguments: (FUNCTION) Ffunction-max-args Return the number of arguments a function may be called with. If the function takes an arbitrary number of arguments or is a built-in special form, nil is returned. The function may be any form that can be passed to `funcall', any special form, or any macro. arguments: (FUNCTION) Fapply Call FUNCTION with our remaining args, using our last arg as list of args. Thus, (apply '+ 1 2 '(3 4)) returns 10.Ffetch-bytecode If byte-compiled OBJECT is lazy-loaded, fetch it now. arguments: (OBJECT) Frun-hooks Run each hook in HOOKS. Major mode functions use this. Each argument should be a symbol, a hook variable. These symbols are processed in the order specified. If a hook symbol has a non-nil value, that value may be a function or a list of functions to be called to run the hook. If the value is a function, it is called with no arguments. If it is a list, the elements are called, in order, with no arguments. To make a hook variable buffer-local, use `make-local-hook', not `make-local-variable'.Frun-hook-with-args Run HOOK with the specified arguments ARGS. HOOK should be a symbol, a hook variable. If HOOK has a non-nil value, that value may be a function or a list of functions to be called to run the hook. If the value is a function, it is called with the given arguments and its return value is returned. If it is a list of functions, those functions are called, in order, with the given arguments ARGS. It is best not to depend on the value return by `run-hook-with-args', as that may change. To make a hook variable buffer-local, use `make-local-hook', not `make-local-variable'.Frun-hook-with-args-until-success Run HOOK with the specified arguments ARGS. HOOK should be a symbol, a hook variable. Its value should be a list of functions. We call those functions, one by one, passing arguments ARGS to each of them, until one of them returns a non-nil value. Then we return that value. If all the functions return nil, we return nil. To make a hook variable buffer-local, use `make-local-hook', not `make-local-variable'.Frun-hook-with-args-until-failure Run HOOK with the specified arguments ARGS. HOOK should be a symbol, a hook variable. Its value should be a list of functions. We call those functions, one by one, passing arguments ARGS to each of them, until one of them returns nil. Then we return nil. If all the functions return non-nil, we return non-nil. To make a hook variable buffer-local, use `make-local-hook', not `make-local-variable'.Fbacktrace-debug Set the debug-on-exit flag of eval frame LEVEL levels down to FLAG. The debugger is entered when that frame exits, if the flag is non-nil. arguments: (LEVEL FLAG) Fbacktrace Print a trace of Lisp function calls currently active. Option arg STREAM specifies the output stream to send the backtrace to, and defaults to the value of `standard-output'. Optional second arg DETAILED means show places where currently active variable bindings, catches, condition-cases, and unwind-protects were made as well as function calls. arguments: (&optional STREAM DETAILED) Fbacktrace-frame Return the function and arguments N frames up from current execution point. If that frame has not evaluated the arguments yet (or is a special form), the value is (nil FUNCTION ARG-FORMS...). If that frame has evaluated its arguments and called its function already, the value is (t FUNCTION ARG-VALUES...). A &rest arg is represented as the tail of the list ARG-VALUES. FUNCTION is whatever was supplied as car of evaluated list, or a lambda expression for macro calls. If N is more than the number of frames, the value is nil. arguments: (NFRAMES) Vmax-specpdl-size Limit on number of Lisp variable bindings & unwind-protects before error.Vmax-lisp-eval-depth Limit on depth in `eval', `apply' and `funcall' before error. This limit is to catch infinite recursions for you before they cause actual stack overflow in C, which would be fatal for Emacs. You can safely make it considerably larger than its default value, if that proves inconveniently small.Vquit-flag Non-nil causes `eval' to abort, unless `inhibit-quit' is non-nil. Typing C-G sets `quit-flag' non-nil, regardless of `inhibit-quit'.Vinhibit-quit Non-nil inhibits C-g quitting from happening immediately. Note that `quit-flag' will still be set by typing C-g, so a quit will be signalled as soon as `inhibit-quit' is nil. To prevent this happening, set `quit-flag' to nil before making `inhibit-quit' nil. The value of `inhibit-quit' is ignored if a critical quit is requested by typing control-shift-G in an X frame.Vstack-trace-on-error *Non-nil means automatically display a backtrace buffer after any error that is not handled by a `condition-case'. If the value is a list, an error only means to display a backtrace if one of its condition symbols appears in the list. See also variable `stack-trace-on-signal'.Vstack-trace-on-signal *Non-nil means automatically display a backtrace buffer after any error that is signalled, whether or not it is handled by a `condition-case'. If the value is a list, an error only means to display a backtrace if one of its condition symbols appears in the list. See also variable `stack-trace-on-error'.Vdebug-ignored-errors *List of errors for which the debugger should not be called. Each element may be a condition-name or a regexp that matches error messages. If any element applies to a given error, that error skips the debugger and just returns to top level. This overrides the variable `debug-on-error'. It does not apply to errors handled by `condition-case'.Vdebug-on-error *Non-nil means enter debugger if an unhandled error is signalled. The debugger will not be entered if the error is handled by a `condition-case'. If the value is a list, an error only means to enter the debugger if one of its condition symbols appears in the list. This variable is overridden by `debug-ignored-errors'. See also variables `debug-on-quit' and `debug-on-signal'.Vdebug-on-signal *Non-nil means enter debugger if an error is signalled. The debugger will be entered whether or not the error is handled by a `condition-case'. If the value is a list, an error only means to enter the debugger if one of its condition symbols appears in the list. See also variable `debug-on-quit'.Vdebug-on-quit *Non-nil means enter debugger if quit is signalled (C-G, for example). Does not apply if quit is handled by a `condition-case'. Entering the debugger can also be achieved at any time (for X11 console) by typing control-shift-G to signal a critical quit.Vdebug-on-next-call Non-nil means enter debugger before next `eval', `apply' or `funcall'.Vdebugger Function to call to invoke debugger. If due to frame exit, args are `exit' and the value being returned; this function's value will be returned instead of that. If due to error, args are `error' and a list of the args to `signal'. If due to `apply' or `funcall' entry, one arg, `lambda'. If due to `eval' entry, one arg, t.Fmake-event Create a new, empty event. The TYPE and PLIST arguments must be nil. WARNING, the event object returned may be a reused one; see the function `deallocate-event'. arguments: (&optional TYPE PLIST) Fdeallocate-event Allow the given event structure to be reused. You MUST NOT use this event object after calling this function with it. You will lose. It is not necessary to call this function, as event objects are garbage-collected like all other objects; however, it may be more efficient to explicitly deallocate events when you are sure that it is safe to do so. arguments: (EVENT) Fcopy-event Make a copy of the given event object. If a second argument is given, the first event is copied into the second and the second is returned. If the second argument is not supplied (or is nil) then a new event will be made as with `allocate-event.' See also the function `deallocate-event'. arguments: (EVENT1 &optional EVENT2) Fevent-to-character Return the closest ASCII approximation to the given event object. If the event isn't a keypress, this returns nil. If the ALLOW-EXTRA-MODIFIERS argument is non-nil, then this is lenient in its translation; it will ignore modifier keys other than control and meta, and will ignore the shift modifier on those characters which have no shifted ASCII equivalent (Control-Shift-A for example, will be mapped to the same ASCII code as Control-A). If the ALLOW-META argument is non-nil, then the Meta modifier will be represented by turning on the high bit of the byte returned; otherwise, nil will be returned for events containing the Meta modifier. If the ALLOW-NON-ASCII argument is non-nil, then characters which are present in the prevailing character set (see the `character-set-property' variable) will be returned as their code in that character set, instead of the return value being restricted to ASCII. Note that specifying both ALLOW-META and ALLOW-NON-ASCII is ambiguous, as both use the high bit; `M-x' and `oslash' will be indistinguishable. arguments: (EVENT &optional ALLOW-EXTRA-MODIFIERS ALLOW-META ALLOW-NON-ASCII) Fcharacter-to-event Converts a keystroke specifier into an event structure, replete with bucky bits. The keystroke is the first argument, and the event to fill in is the second. This function contains knowledge about what the codes ``mean'' -- for example, the number 9 is converted to the character ``Tab'', not the distinct character ``Control-I''. Note that CH (the keystroke specifier) can be an integer, a character, a symbol such as 'clear, or a list such as '(control backspace). If the optional second argument is an event, it is modified; otherwise, a new event object is created. Optional third arg CONSOLE is the console to store in the event, and defaults to the selected console. If CH is an integer or character, the high bit may be interpreted as the meta key. (This is done for backward compatibility in lots of places.) If USE-CONSOLE-META-FLAG is nil, this will always be the case. If USE-CONSOLE-META-FLAG is non-nil, the `meta' flag for CONSOLE affects whether the high bit is interpreted as a meta key. (See `set-input-mode'.) If you don't want this silly meta interpretation done, you should pass in a list containing the character. Beware that character-to-event and event-to-character are not strictly inverse functions, since events contain much more information than the ASCII character set can encode. arguments: (CH &optional EVENT CONSOLE USE-CONSOLE-META-FLAG) Feventp True if OBJECT is an event object. arguments: (OBJECT) Fevent-live-p True if OBJECT is an event object that has not been deallocated. arguments: (OBJECT) Fevent-type Return the type of EVENT. This will be a symbol; one of key-press A key was pressed. button-press A mouse button was pressed. button-release A mouse button was released. misc-user Some other user action happened; typically, this is a menu selection or scrollbar action. motion The mouse moved. process Input is available from a subprocess. timeout A timeout has expired. eval This causes a specified action to occur when dispatched. magic Some window-system-specific event has occurred. empty The event has been allocated but not assigned. arguments: (EVENT) Fevent-timestamp Return the timestamp of the event object EVENT. arguments: (EVENT) Fevent-key Return the Keysym of the key-press event EVENT. This will be a character if the event is associated with one, else a symbol. arguments: (EVENT) Fevent-button Return the button-number of the given button-press or button-release event. arguments: (EVENT) Fevent-modifier-bits Return a number representing the modifier keys which were down when the given mouse or keyboard event was produced. See also the function event-modifiers. arguments: (EVENT) Fevent-modifiers Return a list of symbols, the names of the modifier keys which were down when the given mouse or keyboard event was produced. See also the function event-modifier-bits. arguments: (EVENT) Fevent-window-x-pixel Return the X position in pixels of mouse event EVENT. The value returned is relative to the window the event occurred in. This will signal an error if the event is not a mouse event. See also `mouse-event-p' and `event-x-pixel'. arguments: (EVENT) Fevent-window-y-pixel Return the Y position in pixels of mouse event EVENT. The value returned is relative to the window the event occurred in. This will signal an error if the event is not a mouse event. See also `mouse-event-p' and `event-y-pixel'. arguments: (EVENT) Fevent-x-pixel Return the X position in pixels of mouse event EVENT. The value returned is relative to the frame the event occurred in. This will signal an error if the event is not a mouse event. See also `mouse-event-p' and `event-window-x-pixel'. arguments: (EVENT) Fevent-y-pixel Return the Y position in pixels of mouse event EVENT. The value returned is relative to the frame the event occurred in. This will signal an error if the event is not a mouse event. See also `mouse-event-p' `event-window-y-pixel'. arguments: (EVENT) Fevent-over-text-area-p Return t if the mouse event EVENT occurred over the text area of a window. The modeline is not considered to be part of the text area. arguments: (EVENT) Fevent-over-modeline-p Return t if the mouse event EVENT occurred over the modeline of a window. arguments: (EVENT) Fevent-over-border-p Return t if the mouse event EVENT occurred over an internal border. arguments: (EVENT) Fevent-over-toolbar-p Return t if the mouse event EVENT occurred over a toolbar. arguments: (EVENT) Fevent-channel Return the channel that the event EVENT occurred on. This will be a frame, device, console, or nil for some types of events (e.g. eval events). arguments: (EVENT) Fevent-window Return the window over which mouse event EVENT occurred. This may be nil if the event occurred in the border or over a toolbar. The modeline is considered to be within the window it describes. arguments: (EVENT) Fevent-point Return the character position of the mouse event EVENT. If the event did not occur over a window, or did not occur over text, then this returns nil. Otherwise, it returns a position in the buffer visible in the event's window. arguments: (EVENT) Fevent-closest-point Return the character position closest to the mouse event EVENT. If the event did not occur over a window or over text, return the closest point to the location of the event. If the Y pixel position overlaps a window and the X pixel position is to the left of that window, the closest point is the beginning of the line containing the Y position. If the Y pixel position overlaps a window and the X pixel position is to the right of that window, the closest point is the end of the line containing the Y position. If the Y pixel position is above a window, return 0. If it is below the last character in a window, return the value of (window-end). arguments: (EVENT) Fevent-x Return the X position of the mouse event EVENT in characters. This is relative to the window the event occurred over. arguments: (EVENT) Fevent-y Return the Y position of the mouse event EVENT in characters. This is relative to the window the event occurred over. arguments: (EVENT) Fevent-modeline-position Return the character position in the modeline that EVENT occurred over. EVENT should be a mouse event. If EVENT did not occur over a modeline, nil is returned. You can determine the actual character that the event occurred over by looking in `generated-modeline-string' at the returned character position. Note that `generated-modeline-string' is buffer-local, and you must use EVENT's buffer when retrieving `generated-modeline-string' in order to get accurate results. arguments: (EVENT) Fevent-glyph Return the glyph that the mouse event EVENT occurred over, or nil. arguments: (EVENT) Fevent-glyph-extent Return the extent of the glyph that the mouse event EVENT occurred over. If the event did not occur over a glyph, nil is returned. arguments: (EVENT) Fevent-glyph-x-pixel Return the X pixel position of EVENT relative to the glyph it occurred over. EVENT should be a mouse event. If the event did not occur over a glyph, nil is returned. arguments: (EVENT) Fevent-glyph-y-pixel Return the Y pixel position of EVENT relative to the glyph it occurred over. EVENT should be a mouse event. If the event did not occur over a glyph, nil is returned. arguments: (EVENT) Fevent-toolbar-button Return the toolbar button that the mouse event EVENT occurred over. If the event did not occur over a toolbar button, nil is returned. arguments: (EVENT) Fevent-process Return the process of the given process-output event. arguments: (EVENT) Fevent-function Return the callback function of EVENT. EVENT should be a timeout, misc-user, or eval event. arguments: (EVENT) Fevent-object Return the callback function argument of EVENT. EVENT should be a timeout, misc-user, or eval event. arguments: (EVENT) Fevent-drag-and-drop-data Return the Dnd data list of EVENT. EVENT should be a dnd_drop event. arguments: (EVENT) Fevent-properties Return a list of all of the properties of EVENT. This is in the form of a property list (alternating keyword/value pairs). arguments: (EVENT) Vcharacter-set-property A symbol used to look up the 8-bit character of a keysym. To convert a keysym symbol to an 8-bit code, as when that key is bound to self-insert-command, we will look up the property that this variable names on the property list of the keysym-symbol. The window- system-specific code will set up appropriate properties and set this variable.Flock-buffer Lock FILE, if current buffer is modified. FILE defaults to current buffer's visited file, or else nothing is done if current buffer isn't visiting a file. arguments: (&optional FN) Funlock-buffer Unlock the file visited in the current buffer, if it should normally be locked. arguments: () Ffile-locked-p Return nil if the FILENAME is not locked, t if it is locked by you, else a string of the name of the locker. arguments: (&optional FN) Vlock-directory Don't change thisVsuperlock-file Don't change thisFpopup-menu Pop up the given menu. A menu description is a list of menu items, strings, and submenus. The first element of a menu must be a string, which is the name of the menu. This is the string that will be displayed in the parent menu, if any. For toplevel menus, it is ignored. This string is not displayed in the menu itself. If an element of a menu is a string, then that string will be presented in the menu as unselectable text. If an element of a menu is a string consisting solely of hyphens, then that item will be presented as a solid horizontal line. If an element of a menu is a list, it is treated as a submenu. The name of that submenu (the first element in the list) will be used as the name of the item representing this menu on the parent. Otherwise, the element must be a vector, which describes a menu item. A menu item can have any of the following forms: [ "name" callback <active-p> ] [ "name" callback <active-p> "suffix" ] [ "name" callback :<keyword> <value> :<keyword> <value> ... ] The name is the string to display on the menu; it is filtered through the resource database, so it is possible for resources to override what string is actually displayed. If the `callback' of a menu item is a symbol, then it must name a command. It will be invoked with `call-interactively'. If it is a list, then it is evaluated with `eval'. The possible keywords are this: :active <form> Same as <active-p> in the first two forms: the expression is evaluated just before the menu is displayed, and the menu will be selectable only if the result is non-nil. :suffix "string" Same as "suffix" in the second form: the suffix is appended to the displayed name, providing a convenient way of adding the name of a command's ``argument'' to the menu, like ``Kill Buffer NAME''. :keys "string" Normally, the keyboard equivalents of commands in menus are displayed when the `callback' is a symbol. This can be used to specify keys for more complex menu items. It is passed through `substitute-command-keys' first. :style <style> Specifies what kind of object this menu item is: nil A normal menu item. toggle A toggle button. radio A radio button. The only difference between toggle and radio buttons is how they are displayed. But for consistency, a toggle button should be used when there is one option whose value can be turned on or off, and radio buttons should be used when there is a set of mutually exclusive options. When using a group of radio buttons, you should arrange for no more than one to be marked as selected at a time. :selected <form> Meaningful only when STYLE is `toggle' or `radio'. This specifies whether the button will be in the selected or unselected state. For example: [ "Save As..." write-file t ] [ "Revert Buffer" revert-buffer (buffer-modified-p) ] [ "Read Only" toggle-read-only :style toggle :selected buffer-read-only ] See menubar.el for many more examples. arguments: (MENU-DESC &optional EVENT) Fnormalize-menu-item-name Convert a menu item name string into normal form. Returns a new string. Menu item names should be converted to normal form before being compared. arguments: (NAME &optional BUFFER) Vpopup-menu-titles If true, popup menus will have title bars at the top.Vcurrent-menubar The current menubar. This may be buffer-local. When the menubar is changed, the function `set-menubar-dirty-flag' has to be called for the menubar to be updated on the frame. See `set-menubar' and `set-buffer-menubar'. A menubar is a list of menus and menu-items. A menu is a list of menu items, keyword-value pairs, strings, and submenus. The first element of a menu must be a string, which is the name of the menu. This is the string that will be displayed in the parent menu, if any. For toplevel menus, it is ignored. This string is not displayed in the menu itself. Immediately following the name string of the menu, any of three optional keyword-value pairs is permitted. If an element of a menu (or menubar) is a string, then that string will be presented as unselectable text. If an element of a menu is a string consisting solely of hyphens, then that item will be presented as a solid horizontal line. If an element of a menu is a list, it is treated as a submenu. The name of that submenu (the first element in the list) will be used as the name of the item representing this menu on the parent. If an element of a menubar is `nil', then it is used to represent the division between the set of menubar-items which are flushleft and those which are flushright. Otherwise, the element must be a vector, which describes a menu item. A menu item can have any of the following forms: [ "name" callback <active-p> ] [ "name" callback <active-p> "suffix" ] [ "name" callback :<keyword> <value> :<keyword> <value> ... ] The name is the string to display on the menu; it is filtered through the resource database, so it is possible for resources to override what string is actually displayed. If the `callback' of a menu item is a symbol, then it must name a command. It will be invoked with `call-interactively'. If it is a list, then it is evaluated with `eval'. The possible keywords are this: :active <form> Same as <active-p> in the first two forms: the expression is evaluated just before the menu is displayed, and the menu will be selectable only if the result is non-nil. :suffix "string" Same as "suffix" in the second form: the suffix is appended to the displayed name, providing a convenient way of adding the name of a command's ``argument'' to the menu, like ``Kill Buffer NAME''. :keys "string" Normally, the keyboard equivalents of commands in menus are displayed when the `callback' is a symbol. This can be used to specify keys for more complex menu items. It is passed through `substitute-command-keys' first. :style <style> Specifies what kind of object this menu item is: nil A normal menu item. toggle A toggle button. radio A radio button. button A menubar button. The only difference between toggle and radio buttons is how they are displayed. But for consistency, a toggle button should be used when there is one option whose value can be turned on or off, and radio buttons should be used when there is a set of mutually exclusive options. When using a group of radio buttons, you should arrange for no more than one to be marked as selected at a time. :selected <form> Meaningful only when STYLE is `toggle', `radio' or `button'. This specifies whether the button will be in the selected or unselected state. :included <form> This can be used to control the visibility of a menu or menu item. The form is evaluated and the menu or menu item is only displayed if the result is non-nil. :config <symbol> This is an efficient shorthand for :included (memq symbol menubar-configuration) See the variable `menubar-configuration'. :filter <function> A menu filter can only be used in a menu item list. (i.e.: not in a menu item itself). It is used to sensitize or incrementally create a submenu only when it is selected by the user and not every time the menubar is activated. The filter function is passed the list of menu items in the submenu and must return a list of menu items to be used for the menu. It is called only when the menu is about to be displayed, so other menus may already be displayed. Vile and terrible things will happen if a menu filter function changes the current buffer, window, or frame. It also should not raise, lower, or iconify any frames. Basically, the filter function should have no side-effects. For example: ("File" :filter file-menu-filter ; file-menu-filter is a function that takes ; one argument (a list of menu items) and ; returns a list of menu items [ "Save As..." write-file t ] [ "Revert Buffer" revert-buffer (buffer-modified-p) ] [ "Read Only" toggle-read-only :style toggle :selected buffer-read-only ] ) See x-menubar.el for many more examples. After the menubar is clicked upon, but before any menus are popped up, the functions on the `activate-menubar-hook' are invoked to make top-level changes to the menus and menubar. Note, however, that the use of menu filters (using the :filter keyword) is usually a more efficient way to dynamically alter or sensitize menus.Vactivate-menubar-hook Function or functions called before a menubar menu is pulled down. These functions are called with no arguments, and should interrogate and modify the value of `current-menubar' as desired. The functions on this hook are invoked after the mouse goes down, but before the menu is mapped, and may be used to activate, deactivate, add, or delete items from the menus. However, it is probably the case that using a :filter keyword in a submenu would be a more efficient way of updating menus. See the documentation of `current-menubar'. These functions may return the symbol `t' to assert that they have made no changes to the menubar. If any other value is returned, the menubar is recomputed. If `t' is returned but the menubar has been changed, then the changes may not show up right away. Returning `nil' when the menubar has not changed is not so bad; more computation will be done, but redisplay of the menubar will still be performed optimally.Vmenubar-show-keybindings If true, the menubar will display keyboard equivalents. If false, only the command names will be displayed.Vmenubar-configuration A list of symbols, against which the value of the :config tag for each menubar item will be compared. If a menubar item has a :config tag, then it is omitted from the menubar if that tag is not a member of the `menubar-configuration' list.Vmenubar-pointer-glyph *The shape of the mouse-pointer when over the menubar. This is a glyph; use `set-glyph-image' to change it. If unspecified in a particular domain, the window-system-provided default pointer is used.Vmenubar-visible-p *Whether the menubar is visible. This is a specifier; use `set-specifier' to change it.Fscrollbar-line-up Function called when the line-up arrow on the scrollbar is clicked. This is the little arrow at the top of the scrollbar. One argument, the scrollbar's window. You can advise this function to change the scrollbar behavior. arguments: (WINDOW) Fscrollbar-line-down Function called when the line-down arrow on the scrollbar is clicked. This is the little arrow at the bottom of the scrollbar. One argument, the scrollbar's window. You can advise this function to change the scrollbar behavior. arguments: (WINDOW) Fscrollbar-page-up Function called when the user gives the "page-up" scrollbar action. (The way this is done can vary from scrollbar to scrollbar.) One argument, a cons containing the scrollbar's window and a value (#### document me! This value is nil for Motif/Lucid scrollbars and a number for Athena scrollbars). You can advise this function to change the scrollbar behavior. arguments: (OBJECT) Fscrollbar-page-down Function called when the user gives the "page-down" scrollbar action. (The way this is done can vary from scrollbar to scrollbar.) One argument, a cons containing the scrollbar's window and a value (#### document me! This value is nil for Motif/Lucid scrollbars and a number for Athena scrollbars). You can advise this function to change the scrollbar behavior. arguments: (OBJECT) Fscrollbar-to-top Function called when the user invokes the "to-top" scrollbar action. The way this is done can vary from scrollbar to scrollbar, but C-button1 on the up-arrow is very common. One argument, the scrollbar's window. You can advise this function to change the scrollbar behavior. arguments: (WINDOW) Fscrollbar-to-bottom Function called when the user invokes the "to-bottom" scrollbar action. The way this is done can vary from scrollbar to scrollbar, but C-button1 on the down-arrow is very common. One argument, the scrollbar's window. You can advise this function to change the scrollbar behavior. arguments: (WINDOW) Fscrollbar-vertical-drag Function called when the user drags the vertical scrollbar slider. One argument, a cons containing the scrollbar's window and a value between point-min and point-max. You can advise this function to change the scrollbar behavior. arguments: (OBJECT) Fscrollbar-set-hscroll Sets WINDOW's hscroll position to VALUE. This ensures that VALUE is in the proper range for the horizontal scrollbar. arguments: (WINDOW VALUE) Vscrollbar-pointer-glyph *The shape of the mouse-pointer when over a scrollbar. This is a glyph; use `set-glyph-image' to change it. If unspecified in a particular domain, the window-system-provided default pointer is used.Vscrollbar-width *Width of vertical scrollbars. This is a specifier; use `set-specifier' to change it.Vscrollbar-height *Height of horizontal scrollbars. This is a specifier; use `set-specifier' to change it.Ftoolbar-button-p Return non-nil if OBJECT is a toolbar button. arguments: (OBJECT) Ftoolbar-button-callback Return the callback function associated with the toolbar BUTTON. arguments: (BUTTON) Ftoolbar-button-help-string Return the help string function associated with the toolbar BUTTON. arguments: (BUTTON) Ftoolbar-button-enabled-p Return t if BUTTON is active. arguments: (BUTTON) Fset-toolbar-button-down-flag Don't touch. arguments: (BUTTON FLAG) Fset-default-toolbar-position Set the position that the `default-toolbar' will be displayed at. Valid positions are 'top, 'bottom, 'left and 'right. See `default-toolbar-position'. arguments: (POSITION) Fdefault-toolbar-position Return the position that the `default-toolbar' will be displayed at. The `default-toolbar' will only be displayed here if the corresponding position-specific toolbar specifier does not provide a value. arguments: () Fcheck-toolbar-button-syntax Verify the syntax of entry BUTTON in a toolbar description list. If you want to verify the syntax of a toolbar description list as a whole, use `check-valid-instantiator' with a specifier type of 'toolbar. arguments: (BUTTON &optional NO-ERROR) Ftoolbar-specifier-p Return non-nil if OBJECT is a toolbar specifier. Toolbar specifiers are used to specify the format of a toolbar. The values of the variables `default-toolbar', `top-toolbar', `left-toolbar', `right-toolbar', and `bottom-toolbar' are always toolbar specifiers. Valid toolbar instantiators are called "toolbar descriptors" and are lists of vectors. See `default-toolbar' for a description of the exact format. arguments: (OBJECT) Vdefault-toolbar Specifier for a fallback toolbar. Use `set-specifier' to change this. The position of this toolbar is specified in the function `default-toolbar-position'. If the corresponding position-specific toolbar (e.g. `top-toolbar' if `default-toolbar-position' is 'top) does not specify a toolbar in a particular domain (usually a window), then the value of `default-toolbar' in that domain, if any, will be used instead. Note that the toolbar at any particular position will not be displayed unless its visibility flag is true and its thickness (width or height, depending on orientation) is non-zero. The visibility is controlled by the specifiers `top-toolbar-visible-p', `bottom-toolbar-visible-p', `left-toolbar-visible-p', and `right-toolbar-visible-p', and the thickness is controlled by the specifiers `top-toolbar-height', `bottom-toolbar-height', `left-toolbar-width', and `right-toolbar-width'. Note that one of the four visibility specifiers inherits from `default-toolbar-visibility' and one of the four thickness specifiers inherits from either `default-toolbar-width' or `default-toolbar-height' (depending on orientation), just like for the toolbar description specifiers (e.g. `top-toolbar') mentioned above. Therefore, if you are setting `default-toolbar', you should control the visibility and thickness using `default-toolbar-visible-p', `default-toolbar-width', and `default-toolbar-height', rather than using position-specific specifiers. That way, you will get sane behavior if the user changes the default toolbar position. The format of the instantiator for a toolbar is a list of toolbar-button-descriptors. Each toolbar-button-descriptor is a vector in one of the following formats: [GLYPH-LIST FUNCTION ENABLED-P HELP] or [:style 2D-OR-3D] or [:style 2D-OR-3D :size WIDTH-OR-HEIGHT] or [:size WIDTH-OR-HEIGHT :style 2D-OR-3D] Optionally, one of the toolbar-button-descriptors may be nil instead of a vector; this signifies the division between the toolbar buttons that are to be displayed flush-left, and the buttons to be displayed flush-right. The first vector format above specifies a normal toolbar button; the others specify blank areas in the toolbar. For the first vector format: -- GLYPH-LIST should be a list of one to six glyphs (as created by `make-glyph') or a symbol whose value is such a list. The first glyph, which must be provided, is the glyph used to display the toolbar button when it is in the "up" (not pressed) state. The optional second glyph is for displaying the button when it is in the "down" (pressed) state. The optional third glyph is for when the button is disabled. The optional fourth, fifth and sixth glyphs are used to specify captioned versions for the up, down and disabled states respectively. The function `toolbar-make-button-list' is useful in creating these glyph lists. The specifier variable `toolbar-buttons-captioned-p' controls which glyphs are actually used. -- Even if you do not provide separate down-state and disabled-state glyphs, the user will still get visual feedback to indicate which state the button is in. Buttons in the up-state are displayed with a shadowed border that gives a raised appearance to the button. Buttons in the down-state are displayed with shadows that give a recessed appearance. Buttons in the disabled state are displayed with no shadows, giving a 2-d effect. -- If some of the toolbar glyphs are not provided, they inherit as follows: UP: up DOWN: down -> up DISABLED: disabled -> up CAP-UP: cap-up -> up CAP-DOWN: cap-down -> cap-up -> down -> up CAP-DISABLED: cap-disabled -> cap-up -> disabled -> up -- The second element FUNCTION is a function to be called when the toolbar button is activated (i.e. when the mouse is released over the toolbar button, if the press occurred in the toolbar). It can be any form accepted by `call-interactively', since this is how it is invoked. -- The third element ENABLED-P specifies whether the toolbar button is enabled (disabled buttons do nothing when they are activated, and are displayed differently; see above). It should be either a boolean or a form that evaluates to a boolean. -- The fourth element HELP, if non-nil, should be a string. This string is displayed in the echo area when the mouse passes over the toolbar button. For the other vector formats (specifying blank areas of the toolbar): -- 2D-OR-3D should be one of the symbols '2d or '3d, indicating whether the area is displayed with shadows (giving it a raised, 3-d appearance) or without shadows (giving it a flat appearance). -- WIDTH-OR-HEIGHT specifies the length, in pixels, of the blank area. If omitted, it defaults to a device-specific value (8 pixels for X devices).Vtop-toolbar Specifier for the toolbar at the top of the frame. Use `set-specifier' to change this. See `default-toolbar' for a description of a valid toolbar instantiator.Vbottom-toolbar Specifier for the toolbar at the bottom of the frame. Use `set-specifier' to change this. See `default-toolbar' for a description of a valid toolbar instantiator. Note that, unless the `default-toolbar-position' is `bottom', by default the height of the bottom toolbar (controlled by `bottom-toolbar-height') is 0; thus, a bottom toolbar will not be displayed even if you provide a value for `bottom-toolbar'.Vleft-toolbar Specifier for the toolbar at the left edge of the frame. Use `set-specifier' to change this. See `default-toolbar' for a description of a valid toolbar instantiator. Note that, unless the `default-toolbar-position' is `left', by default the height of the left toolbar (controlled by `left-toolbar-width') is 0; thus, a left toolbar will not be displayed even if you provide a value for `left-toolbar'.Vright-toolbar Specifier for the toolbar at the right edge of the frame. Use `set-specifier' to change this. See `default-toolbar' for a description of a valid toolbar instantiator. Note that, unless the `default-toolbar-position' is `right', by default the height of the right toolbar (controlled by `right-toolbar-width') is 0; thus, a right toolbar will not be displayed even if you provide a value for `right-toolbar'.Vdefault-toolbar-height *Height of the default toolbar, if it's oriented horizontally. This is a specifier; use `set-specifier' to change it. The position of the default toolbar is specified by the function `set-default-toolbar-position'. If the corresponding position-specific toolbar thickness specifier (e.g. `top-toolbar-height' if `default-toolbar-position' is 'top) does not specify a thickness in a particular domain (a window or a frame), then the value of `default-toolbar-height' or `default-toolbar-width' (depending on the toolbar orientation) in that domain, if any, will be used instead. Note that `default-toolbar-height' is only used when `default-toolbar-position' is 'top or 'bottom, and `default-toolbar-width' is only used when `default-toolbar-position' is 'left or 'right. Note that all of the position-specific toolbar thickness specifiers have a fallback value of zero when they do not correspond to the default toolbar. Therefore, you will have to set a non-zero thickness value if you want a position-specific toolbar to be displayed. Internally, toolbar thickness specifiers are instantiated in both window and frame domains, for different purposes. The value in the domain of a frame's selected window specifies the actual toolbar thickness that you will see in that frame. The value in the domain of a frame itself specifies the toolbar thickness that is used in frame geometry calculations. Thus, for example, if you set the frame width to 80 characters and the left toolbar width for that frame to 68 pixels, then the frame will be sized to fit 80 characters plus a 68-pixel left toolbar. If you then set the left toolbar width to 0 for a particular buffer (or if that buffer does not specify a left toolbar or has a nil value specified for `left-toolbar-visible-p'), you will find that, when that buffer is displayed in the selected window, the window will have a width of 86 or 87 characters -- the frame is sized for a 68-pixel left toolbar but the selected window specifies that the left toolbar is not visible, so it is expanded to take up the slack.Vdefault-toolbar-width *Width of the default toolbar, if it's oriented vertically. This is a specifier; use `set-specifier' to change it. See `default-toolbar-height' for more information.Vtop-toolbar-height *Height of the top toolbar. This is a specifier; use `set-specifier' to change it. See `default-toolbar-height' for more information.Vbottom-toolbar-height *Height of the bottom toolbar. This is a specifier; use `set-specifier' to change it. See `default-toolbar-height' for more information.Vleft-toolbar-width *Width of left toolbar. This is a specifier; use `set-specifier' to change it. See `default-toolbar-height' for more information.Vright-toolbar-width *Width of right toolbar. This is a specifier; use `set-specifier' to change it. See `default-toolbar-height' for more information.Vdefault-toolbar-visible-p *Whether the default toolbar is visible. This is a specifier; use `set-specifier' to change it. The position of the default toolbar is specified by the function `set-default-toolbar-position'. If the corresponding position-specific toolbar visibility specifier (e.g. `top-toolbar-visible-p' if `default-toolbar-position' is 'top) does not specify a visible-p value in a particular domain (a window or a frame), then the value of `default-toolbar-visible-p' in that domain, if any, will be used instead. Both window domains and frame domains are used internally, for different purposes. The distinction here is exactly the same as for thickness specifiers; see `default-toolbar-height' for more information. `default-toolbar-visible-p' and all of the position-specific toolbar visibility specifiers have a fallback value of true.Vtop-toolbar-visible-p *Whether the top toolbar is visible. This is a specifier; use `set-specifier' to change it. See `default-toolbar-visible-p' for more information.Vbottom-toolbar-visible-p *Whether the bottom toolbar is visible. This is a specifier; use `set-specifier' to change it. See `default-toolbar-visible-p' for more information.Vleft-toolbar-visible-p *Whether the left toolbar is visible. This is a specifier; use `set-specifier' to change it. See `default-toolbar-visible-p' for more information.Vright-toolbar-visible-p *Whether the right toolbar is visible. This is a specifier; use `set-specifier' to change it. See `default-toolbar-visible-p' for more information.Vtoolbar-buttons-captioned-p *Whether the toolbar buttons are captioned. This will only have a visible effect for those toolbar buttons which had captioned versions specified. This is a specifier; use `set-specifier' to change it.Fpopup-dialog-box Pop up a dialog box. A dialog box description is a list. The first element of a dialog box must be a string, which is the title or question. The rest of the elements are descriptions of the dialog box's buttons. Each of these is a vector, the syntax of which is essentially the same as that of popup menu items. They may have any of the following forms: [ "name" callback <active-p> ] [ "name" callback <active-p> "suffix" ] [ "name" callback :<keyword> <value> :<keyword> <value> ... ] The name is the string to display on the button; it is filtered through the resource database, so it is possible for resources to override what string is actually displayed. If the `callback' of a button is a symbol, then it must name a command. It will be invoked with `call-interactively'. If it is a list, then it is evaluated with `eval'. One (and only one) of the buttons may be `nil'. This marker means that all following buttons should be flushright instead of flushleft. Though the keyword/value syntax is supported for dialog boxes just as in popup menus, the only keyword which is both meaningful and fully implemented for dialog box buttons is `:active'. arguments: (DBOX-DESC) Fpopup-up-p Return t if a popup menu or dialog box is up, nil otherwise. See `popup-menu' and `popup-dialog-box'. arguments: () Vmenu-no-selection-hook Function or functions to call when a menu or dialog box is dismissed without a selection having been made.Fdefine-word-pattern Don't call this function directly, instead use 'define-word' which accept a pattern compiled by 'regexp-compile' with word-option t. arguments: (PATTERN) Vre-short-flag *T means regexp search success when the shortest match is found.Fexecute-ccl-program Execute CCL-PROGRAM with registers initialized by STATUS. CCL-PROGRAM is a vector of compiled CCL code created by `ccl-compile'. STATUS must be a vector of nine values, specifying the initial value for the R0, R1 .. R7 registers and for the instruction counter IC. A nil value for a register initializer causes the register to be set to 0. A nil value for the IC initializer causes execution to start at the beginning of the program. When the program is done, STATUS is modified (by side-effect) to contain the ending values for the corresponding registers and IC. arguments: (CCL-PROGRAM STATUS) Fexecute-ccl-program-string Execute CCL-PROGRAM with initial STATUS on STRING. CCL-PROGRAM is a vector of compiled CCL code created by `ccl-compile'. STATUS must be a vector of nine values, specifying the initial value for the R0, R1 .. R7 registers and for the instruction counter IC. A nil value for a register initializer causes the register to be set to 0. A nil value for the IC initializer causes execution to start at the beginning of the program. When the program is done, STATUS is modified (by side-effect) to contain the ending values for the corresponding registers and IC. Returns the resulting string. arguments: (CCL-PROGRAM STATUS STR) Fccl-reset-elapsed-time Reset the internal value which holds the time elapsed by CCL interpreter. arguments: () Fccl-elapsed-time Return the time elapsed by CCL interpreter as cons of user and system time. This measures processor time, not real time. Both values are floating point numbers measured in seconds. If only one overall value can be determined, the return value will be a cons of that value and 0. arguments: () Fcharsetp Return non-nil if OBJECT is a charset. arguments: (OBJECT) Ffind-charset Retrieve the charset of the given name. If CHARSET-OR-NAME is a charset object, it is simply returned. Otherwise, CHARSET-OR-NAME should be a symbol. If there is no such charset, nil is returned. Otherwise the associated charset object is returned. arguments: (CHARSET-OR-NAME) Fget-charset Retrieve the charset of the given name. Same as `find-charset' except an error is signalled if there is no such charset instead of returning nil. arguments: (NAME) Fcharset-list Return a list of the names of all defined charsets. arguments: () Fcharset-name Return the name of the given charset. arguments: (CHARSET) Fmake-charset Define a new character set. This function is for use with Mule support. NAME is a symbol, the name by which the character set is normally referred. DOC-STRING is a string describing the character set. PROPS is a property list, describing the specific nature of the character set. Recognized properties are: 'registry A regular expression matching the font registry field for this character set. 'dimension Number of octets used to index a character in this charset. Either 1 or 2. Defaults to 1. 'columns Number of columns used to display a character in this charset. Only used in TTY mode. (Under X, the actual width of a character can be derived from the font used to display the characters.) If unspecified, defaults to the dimension (this is almost always the correct value). 'chars Number of characters in each dimension (94 or 96). Defaults to 94. Note that if the dimension is 2, the character set thus described is 94x94 or 96x96. 'final Final byte of ISO 2022 escape sequence. Must be supplied. Each combination of (DIMENSION, CHARS) defines a separate namespace for final bytes. Note that ISO 2022 restricts the final byte to the range 0x30 - 0x7E if dimension == 1, and 0x30 - 0x5F if dimension == 2. Note also that final bytes in the range 0x30 - 0x3F are reserved for user-defined (not official) character sets. 'graphic 0 (use left half of font on output) or 1 (use right half of font on output). Defaults to 0. For example, for a font whose registry is ISO8859-1, the left half (octets 0x20 - 0x7F) is the `ascii' character set, while the right half (octets 0xA0 - 0xFF) is the `latin-1' character set. With 'graphic set to 0, the octets will have their high bit cleared; with it set to 1, the octets will have their high bit set. 'direction 'l2r (left-to-right) or 'r2l (right-to-left). Defaults to 'l2r. 'ccl-program A compiled CCL program used to convert a character in this charset into an index into the font. This is in addition to the 'graphic property. The CCL program is passed the octets of the character, with the high bit cleared and set depending upon whether the value of the 'graphic property is 0 or 1. arguments: (NAME DOC-STRING PROPS) Fmake-reverse-direction-charset Make a charset equivalent to CHARSET but which goes in the opposite direction. NEW-NAME is the name of the new charset. Return the new charset. arguments: (CHARSET NEW-NAME) Fcharset-reverse-direction-charset Return the reverse-direction charset parallel to CHARSET, if any. This is the charset with the same properties (in particular, the same dimension, number of characters per dimension, and final byte) as CHARSET but whose characters are displayed in the opposite direction. arguments: (CHARSET) Fcharset-from-attributes Return a charset with the given DIMENSION, CHARS, FINAL, and DIRECTION. If DIRECTION is omitted, both directions will be checked (left-to-right will be returned if character sets exist for both directions). arguments: (DIMENSION CHARS FINAL &optional DIRECTION) Fcharset-doc-string Return doc string of CHARSET. arguments: (CHARSET) Fcharset-dimension Return dimension of CHARSET. arguments: (CHARSET) Fcharset-property Return property PROP of CHARSET. Recognized properties are those listed in `make-charset', as well as 'name and 'doc-string. arguments: (CHARSET PROP) Fset-charset-ccl-program Set the 'ccl-program property of CHARSET to CCL-PROGRAM. arguments: (CHARSET CCL-PROGRAM) Fset-charset-registry Set the 'registry property of CHARSET to REGISTRY. arguments: (CHARSET REGISTRY) Fmake-char Make a multi-byte character from CHARSET and octets ARG1 and ARG2. arguments: (CHARSET ARG1 &optional ARG2) Fchar-charset Return the character set of char CH. arguments: (CH) Fchar-octet Return the octet numbered N (should be 0 or 1) of char CH. N defaults to 0 if omitted. arguments: (CH &optional N) Fmake-composite-char Convert a string into a single composite character. The character is the result of overstriking all the characters in the string. arguments: (STRING) Fcomposite-char-string Return a string of the characters comprising a composite character. arguments: (CH) Fcoding-system-p T if OBJECT is a coding system. A coding system is an object that defines how text containing multiple character sets is encoded into a stream of (typically 8-bit) bytes. The coding system is used to decode the stream into a series of characters (which may be from multiple charsets) when the text is read from a file or process, and is used to encode the text back into the same format when it is written out to a file or process. For example, many ISO2022-compliant coding systems (such as Compound Text, which is used for inter-client data under the X Window System) use escape sequences to switch between different charsets -- Japanese Kanji, for example, is invoked with "ESC $ ( B"; ASCII is invoked with "ESC ( B"; and Cyrillic is invoked with "ESC - L". See `make-coding-system' for more information. Coding systems are normally identified using a symbol, and the symbol is accepted in place of the actual coding system object whenever a coding system is called for. (This is similar to how faces work.) arguments: (OBJECT) Ffind-coding-system Retrieve the coding system of the given name. If CODING-SYSTEM-OR-NAME is a coding-system object, it is simply returned. Otherwise, CODING-SYSTEM-OR-NAME should be a symbol. If there is no such coding system, nil is returned. Otherwise the associated coding system object is returned. arguments: (CODING-SYSTEM-OR-NAME) Fget-coding-system Retrieve the coding system of the given name. Same as `find-coding-system' except that if there is no such coding system, an error is signaled instead of returning nil. arguments: (NAME) Fcoding-system-list Return a list of the names of all defined coding systems. arguments: () Fcoding-system-name Return the name of the given coding system. arguments: (CODING-SYSTEM) Fmake-coding-system Register symbol NAME as a coding system. TYPE describes the conversion method used and should be one of nil or 'undecided Automatic conversion. XEmacs attempts to detect the coding system used in the file. 'no-conversion No conversion. Use this for binary files and such. On output, graphic characters that are not in ASCII or Latin-1 will be replaced by a ?. (For a no-conversion-encoded buffer, these characters will only be present if you explicitly insert them.) 'shift-jis Shift-JIS (a Japanese encoding commonly used in PC operating systems). 'iso2022 Any ISO2022-compliant encoding. Among other things, this includes JIS (the Japanese encoding commonly used for e-mail), EUC (the standard Unix encoding for Japanese and other languages), and Compound Text (the encoding used in X11). You can specify more specific information about the conversion with the FLAGS argument. 'big5 Big5 (the encoding commonly used for Taiwanese). 'ccl The conversion is performed using a user-written pseudo-code program. CCL (Code Conversion Language) is the name of this pseudo-code. 'internal Write out or read in the raw contents of the memory representing the buffer's text. This is primarily useful for debugging purposes, and is only enabled when XEmacs has been compiled with DEBUG_XEMACS defined (via the --debug configure option). WARNING: Reading in a file using 'internal conversion can result in an internal inconsistency in the memory representing a buffer's text, which will produce unpredictable results and may cause XEmacs to crash. Under normal circumstances you should never use 'internal conversion. DOC-STRING is a string describing the coding system. PROPS is a property list, describing the specific nature of the character set. Recognized properties are: 'mnemonic String to be displayed in the modeline when this coding system is active. 'eol-type End-of-line conversion to be used. It should be one of nil Automatically detect the end-of-line type (LF, CRLF, or CR). Also generate subsidiary coding systems named `NAME-unix', `NAME-dos', and `NAME-mac', that are identical to this coding system but have an EOL-TYPE value of 'lf, 'crlf, and 'cr, respectively. 'lf The end of a line is marked externally using ASCII LF. Since this is also the way that XEmacs represents an end-of-line internally, specifying this option results in no end-of-line conversion. This is the standard format for Unix text files. 'crlf The end of a line is marked externally using ASCII CRLF. This is the standard format for MS-DOS text files. 'cr The end of a line is marked externally using ASCII CR. This is the standard format for Macintosh text files. t Automatically detect the end-of-line type but do not generate subsidiary coding systems. (This value is converted to nil when stored internally, and `coding-system-property' will return nil.) 'post-read-conversion Function called after a file has been read in, to perform the decoding. Called with two arguments, BEG and END, denoting a region of the current buffer to be decoded. 'pre-write-conversion Function called before a file is written out, to perform the encoding. Called with two arguments, BEG and END, denoting a region of the current buffer to be encoded. The following additional properties are recognized if TYPE is 'iso2022: 'charset-g0 'charset-g1 'charset-g2 'charset-g3 The character set initially designated to the G0 - G3 registers. The value should be one of -- A charset object (designate that character set) -- nil (do not ever use this register) -- t (no character set is initially designated to the register, but may be later on; this automatically sets the corresponding `force-g*-on-output' property) 'force-g0-on-output 'force-g1-on-output 'force-g2-on-output 'force-g2-on-output If non-nil, send an explicit designation sequence on output before using the specified register. 'short If non-nil, use the short forms "ESC $ @", "ESC $ A", and "ESC $ B" on output in place of the full designation sequences "ESC $ ( @", "ESC $ ( A", and "ESC $ ( B". 'no-ascii-eol If non-nil, don't designate ASCII to G0 at each end of line on output. Setting this to non-nil also suppresses other state-resetting that normally happens at the end of a line. 'no-ascii-cntl If non-nil, don't designate ASCII to G0 before control chars on output. 'seven If non-nil, use 7-bit environment on output. Otherwise, use 8-bit environment. 'lock-shift If non-nil, use locking-shift (SO/SI) instead of single-shift or designation by escape sequence. 'no-iso6429 If non-nil, don't use ISO6429's direction specification. 'escape-quoted If non-nil, literal control characters that are the same as the beginning of a recognized ISO2022 or ISO6429 escape sequence (in particular, ESC (0x1B), SO (0x0E), SI (0x0F), SS2 (0x8E), SS3 (0x8F), and CSI (0x9B)) are "quoted" with an escape character so that they can be properly distinguished from an escape sequence. (Note that doing this results in a non-portable encoding.) This encoding flag is used for byte-compiled files. Note that ESC is a good choice for a quoting character because there are no escape sequences whose second byte is a character from the Control-0 or Control-1 character sets; this is explicitly disallowed by the ISO2022 standard. 'input-charset-conversion A list of conversion specifications, specifying conversion of characters in one charset to another when decoding is performed. Each specification is a list of two elements: the source charset, and the destination charset. 'output-charset-conversion A list of conversion specifications, specifying conversion of characters in one charset to another when encoding is performed. The form of each specification is the same as for 'input-charset-conversion. The following additional properties are recognized (and required) if TYPE is 'ccl: 'decode CCL program used for decoding (converting to internal format). 'encode CCL program used for encoding (converting to external format). arguments: (NAME TYPE &optional DOC-STRING PROPS) Fcopy-coding-system Copy OLD-CODING-SYSTEM to NEW-NAME. If NEW-NAME does not name an existing coding system, a new one will be created. arguments: (OLD-CODING-SYSTEM NEW-NAME) Fsubsidiary-coding-system Return the subsidiary coding system of CODING-SYSTEM with eol type EOL-TYPE. arguments: (CODING-SYSTEM EOL-TYPE) Fcoding-system-doc-string Return the doc string for CODING-SYSTEM. arguments: (CODING-SYSTEM) Fcoding-system-type Return the type of CODING-SYSTEM. arguments: (CODING-SYSTEM) Fcoding-system-charset Return initial charset of CODING-SYSTEM designated to GNUM. GNUM allows 0 .. 3. arguments: (CODING-SYSTEM GNUM) Fcoding-system-property Return the PROP property of CODING-SYSTEM. arguments: (CODING-SYSTEM PROP) Fcoding-category-list Return a list of all recognized coding categories. arguments: () Fset-coding-priority-list Change the priority order of the coding categories. LIST should be list of coding categories, in descending order of priority. Unspecified coding categories will be lower in priority than all specified ones, in the same relative order they were in previously. arguments: (LIST) Fcoding-priority-list Return a list of coding categories in descending order of priority. arguments: () Fset-coding-category-system Change the coding system associated with a coding category. arguments: (CODING-CATEGORY CODING-SYSTEM) Fcoding-category-system Return the coding system associated with a coding category. arguments: (CODING-CATEGORY) Fdetect-coding-region Detect coding system of the text in the region between START and END. Returned a list of possible coding systems ordered by priority. If only ASCII characters are found, it returns 'undecided or one of its subsidiary coding systems according to a detected end-of-line type. Optional arg BUFFER defaults to the current buffer. arguments: (START END &optional BUFFER) Fdecode-coding-region Decode the text between START and END which is encoded in CODING-SYSTEM. This is useful if you've read in encoded text from a file without decoding it (e.g. you read in a JIS-formatted file but used the `binary' or `no-conversion' coding system, so that it shows up as "^[$B!<!+^[(B"). Return length of decoded text. BUFFER defaults to the current buffer if unspecified. arguments: (START END CODING-SYSTEM &optional BUFFER) Fencode-coding-region Encode the text between START and END using CODING-SYSTEM. This will, for example, convert Japanese characters into stuff such as "^[$B!<!+^[(B" if you use the JIS encoding. Return length of encoded text. BUFFER defaults to the current buffer if unspecified. arguments: (START END CODING-SYSTEM &optional BUFFER) Fdecode-shift-jis-char Decode a JISX0208 character of Shift-JIS coding-system. CODE is the character code in Shift-JIS as a cons of type bytes. Return the corresponding character. arguments: (CODE) Fencode-shift-jis-char Encode a JISX0208 character CHAR to SHIFT-JIS coding-system. Return the corresponding character code in SHIFT-JIS as a cons of two bytes. arguments: (CH) Fdecode-big5-char Decode a Big5 character CODE of BIG5 coding-system. CODE is the character code in BIG5, a cons of two integers. Return the corresponding character. arguments: (CODE) Fencode-big5-char Encode the Big5 character CH to BIG5 coding-system. Return the corresponding character code in Big5. arguments: (CH) Vkeyboard-coding-system Coding system used for TTY keyboard input. Not used under a windowing system.Vterminal-coding-system Coding system used for TTY display output. Not used under a windowing system.Vcoding-system-for-read Overriding coding system used when writing a file or process. You should *bind* this, not set it. If this is non-nil, it specifies the coding system that will be used when a file or process is read in, and overrides `buffer-file-coding-system-for-read', `insert-file-contents-pre-hook', etc. Use those variables instead of this one for permanent changes to the environment.Vcoding-system-for-write Overriding coding system used when writing a file or process. You should *bind* this, not set it. If this is non-nil, it specifies the coding system that will be used when a file or process is wrote in, and overrides `buffer-file-coding-system', `write-region-pre-hook', etc. Use those variables instead of this one for permanent changes to the environment.Vfile-name-coding-system Coding system used to convert pathnames when accessing files.Venable-multibyte-characters Non-nil means the buffer contents are regarded as multi-byte form of characters, not a binary code. This affects the display, file I/O, and behaviors of various editing commands. Setting this to nil does not do anything.Fconsole-tty-terminal-type Return the terminal type of TTY console CONSOLE. arguments: (&optional CONSOLE) Fconsole-tty-controlling-process Return the controlling process of TTY console CONSOLE. arguments: (&optional CONSOLE) Vdefault-tty-frame-plist Plist of default frame-creation properties for tty frames. These are in addition to and override what is specified in `default-frame-plist', but are overridden by the arguments to the particular call to `make-frame'.Fregister-tty-color Register COLOR as a recognized TTY color. COLOR should be a string. Strings FG-STRING and BG-STRING should specify the escape sequences to set the foreground and background to the given color, respectively. arguments: (COLOR FG-STRING BG-STRING) Funregister-tty-color Unregister COLOR as a recognized TTY color. arguments: (COLOR) Ffind-tty-color Look up COLOR in the list of registered TTY colors. If it is found, return a list (FG-STRING BG-STRING) of the escape sequences used to set the foreground and background to the color, respectively. If it is not found, return nil. arguments: (COLOR) Ftty-color-list Return a list of the registered TTY colors. arguments: () Fset-tty-dynamic-color-specs Set the dynamic color specifications for TTY's. FG and BG should be either nil or vaguely printf-like strings, where each occurrence of %s is replaced with the color name and each occurrence of %% is replaced with a single % character. arguments: (FG BG) Ftty-dynamic-color-specs Return the dynamic color specifications for TTY's as a list of (FG BG). See `set-tty-dynamic-color-specs'. arguments: () Fclose-database Close database OBJ. arguments: (OBJ) Fdatabase-type Return the type of database OBJ. arguments: (OBJ) Fdatabase-subtype Return the subtype of database OBJ, if any. arguments: (OBJ) Fdatabase-live-p Return t iff OBJ is an active database, else nil. arguments: (OBJ) Fdatabase-file-name Return the filename associated with the database OBJ. arguments: (OBJ) Fdatabasep Return t iff OBJ is a database, else nil. arguments: (OBJ) Fdatabase-last-error Return the last error associated with database OBJ. arguments: (&optional OBJ) Fopen-database Open database FILE, using database method TYPE and SUBTYPE, with access rights ACCESS and permissions MODE. ACCESS can be any combination of 'r' 'w' and '+', for read, write, and creation flags. arguments: (FILE &optional TYPE SUBTYPE ACCESS MODE) Fput-database Store KEY and VAL in DATABASE. If optional fourth arg REPLACE is non-nil, replace any existing entry in the database. arguments: (KEY VAL DBASE &optional REPLACE) Fremove-database Remove KEY from DATABASE. arguments: (KEY DBASE) Fget-database Find value for KEY in DATABASE. If there is no corresponding value, return DEFAULT (defaults to nil). arguments: (KEY DBASE &optional DEFAULT) Fmap-database Map FUNCTION over entries in DATABASE, calling it with two args, each key and value in the database. arguments: (FUNCTION DBASE) Finput-pending-p T if command input is currently available with no waiting. Actually, the value is nil only if we can be sure that no input is available. arguments: () Fadd-timeout Add a timeout, to be signaled after the timeout period has elapsed. SECS is a number of seconds, expressed as an integer or a float. FUNCTION will be called after that many seconds have elapsed, with one argument, the given OBJECT. If the optional RESIGNAL argument is provided, then after this timeout expires, `add-timeout' will automatically be called again with RESIGNAL as the first argument. This function returns an object which is the id number of this particular timeout. You can pass that object to `disable-timeout' to turn off the timeout before it has been signalled. NOTE: Id numbers as returned by this function are in a distinct namespace from those returned by `add-async-timeout'. This means that the same id number could refer to a pending synchronous timeout and a different pending asynchronous timeout, and that you cannot pass an id from `add-timeout' to `disable-async-timeout', or vice-versa. The number of seconds may be expressed as a floating-point number, in which case some fractional part of a second will be used. Caveat: the usable timeout granularity will vary from system to system. Adding a timeout causes a timeout event to be returned by `next-event', and the function will be invoked by `dispatch-event,' so if emacs is in a tight loop, the function will not be invoked until the next call to sit-for or until the return to top-level (the same is true of process filters). If you need to have a timeout executed even when XEmacs is in the midst of running Lisp code, use `add-async-timeout'. WARNING: if you are thinking of calling add-timeout from inside of a callback function as a way of resignalling a timeout, think again. There is a race condition. That's why the RESIGNAL argument exists. arguments: (SECS FUNCTION OBJECT &optional RESIGNAL) Fdisable-timeout Disable a timeout from signalling any more. ID should be a timeout id number as returned by `add-timeout'. If ID corresponds to a one-shot timeout that has already signalled, nothing will happen. It will not work to call this function on an id number returned by `add-async-timeout'. Use `disable-async-timeout' for that. arguments: (ID) Fadd-async-timeout Add an asynchronous timeout, to be signaled after an interval has elapsed. SECS is a number of seconds, expressed as an integer or a float. FUNCTION will be called after that many seconds have elapsed, with one argument, the given OBJECT. If the optional RESIGNAL argument is provided, then after this timeout expires, `add-async-timeout' will automatically be called again with RESIGNAL as the first argument. This function returns an object which is the id number of this particular timeout. You can pass that object to `disable-async-timeout' to turn off the timeout before it has been signalled. NOTE: Id numbers as returned by this function are in a distinct namespace from those returned by `add-timeout'. This means that the same id number could refer to a pending synchronous timeout and a different pending asynchronous timeout, and that you cannot pass an id from `add-async-timeout' to `disable-timeout', or vice-versa. The number of seconds may be expressed as a floating-point number, in which case some fractional part of a second will be used. Caveat: the usable timeout granularity will vary from system to system. Adding an asynchronous timeout causes the function to be invoked as soon as the timeout occurs, even if XEmacs is in the midst of executing some other code. (This is unlike the synchronous timeouts added with `add-timeout', where the timeout will only be signalled when XEmacs is waiting for events, i.e. the next return to top-level or invocation of `sit-for' or related functions.) This means that the function that is called *must* not signal an error or change any global state (e.g. switch buffers or windows) except when locking code is in place to make sure that race conditions don't occur in the interaction between the asynchronous timeout function and other code. Under most circumstances, you should use `add-timeout' instead, as it is much safer. Asynchronous timeouts should only be used when such behavior is really necessary. Asynchronous timeouts are blocked and will not occur when `inhibit-quit' is non-nil. As soon as `inhibit-quit' becomes nil again, any pending asynchronous timeouts will get called immediately. (Multiple occurrences of the same asynchronous timeout are not queued, however.) While the callback function of an asynchronous timeout is invoked, `inhibit-quit' is automatically bound to non-nil, and thus other asynchronous timeouts will be blocked unless the callback function explicitly sets `inhibit-quit' to nil. WARNING: if you are thinking of calling `add-async-timeout' from inside of a callback function as a way of resignalling a timeout, think again. There is a race condition. That's why the RESIGNAL argument exists. arguments: (SECS FUNCTION OBJECT &optional RESIGNAL) Fdisable-async-timeout Disable an asynchronous timeout from signalling any more. ID should be a timeout id number as returned by `add-async-timeout'. If ID corresponds to a one-shot timeout that has already signalled, nothing will happen. It will not work to call this function on an id number returned by `add-timeout'. Use `disable-timeout' for that. arguments: (ID) Fenqueue-eval-event Add an eval event to the back of the eval event queue. When this event is dispatched, FUNCTION (which should be a function of one argument) will be called with OBJECT as its argument. See `next-event' for a description of event types and how events are received. arguments: (FUNCTION OBJECT) Fnext-event Return the next available event. Pass this object to `dispatch-event' to handle it. In most cases, you will want to use `next-command-event', which returns the next available "user" event (i.e. keypress, button-press, button-release, or menu selection) instead of this function. If EVENT is non-nil, it should be an event object and will be filled in and returned; otherwise a new event object will be created and returned. If PROMPT is non-nil, it should be a string and will be displayed in the echo area while this function is waiting for an event. The next available event will be -- any events in `unread-command-events' or `unread-command-event'; else -- the next event in the currently executing keyboard macro, if any; else -- an event queued by `enqueue-eval-event', if any; else -- the next available event from the window system or terminal driver. In the last case, this function will block until an event is available. The returned event will be one of the following types: -- a key-press event. -- a button-press or button-release event. -- a misc-user-event, meaning the user selected an item on a menu or used the scrollbar. -- a process event, meaning that output from a subprocess is available. -- a timeout event, meaning that a timeout has elapsed. -- an eval event, which simply causes a function to be executed when the event is dispatched. Eval events are generated by `enqueue-eval-event' or by certain other conditions happening. -- a magic event, indicating that some window-system-specific event happened (such as a focus-change notification) that must be handled synchronously with other events. `dispatch-event' knows what to do with these events. arguments: (&optional EVENT PROMPT) Fnext-command-event Return the next available "user" event. Pass this object to `dispatch-event' to handle it. If EVENT is non-nil, it should be an event object and will be filled in and returned; otherwise a new event object will be created and returned. If PROMPT is non-nil, it should be a string and will be displayed in the echo area while this function is waiting for an event. The event returned will be a keyboard, mouse press, or mouse release event. If there are non-command events available (mouse motion, sub-process output, etc) then these will be executed (with `dispatch-event') and discarded. This function is provided as a convenience; it is rougly equivalent to the lisp code (while (progn (next-event event prompt) (not (or (key-press-event-p event) (button-press-event-p event) (button-release-event-p event) (misc-user-event-p event)))) (dispatch-event event)) but it also makes a provision for displaying keystrokes in the echo area. arguments: (&optional EVENT PROMPT) Fdiscard-input Discard any pending "user" events. Also cancel any kbd macro being defined. A user event is a key press, button press, button release, or "misc-user" event (menu selection or scrollbar action). arguments: () Faccept-process-output Allow any pending output from subprocesses to be read by Emacs. It is read into the process' buffers or given to their filter functions. Non-nil arg PROCESS means do not return until some output has been received from PROCESS. Nil arg PROCESS means do not return until some output has been received from any process. If the second arg is non-nil, it is the maximum number of seconds to wait: this function will return after that much time even if no input has arrived from PROCESS. This argument may be a float, meaning wait some fractional part of a second. If the third arg is non-nil, it is a number of milliseconds that is added to the second arg. (This exists only for compatibility.) Return non-nil iff we received any output before the timeout expired. arguments: (&optional PROCESS TIMEOUT-SECS TIMEOUT-MSECS) Fsleep-for Pause, without updating display, for ARG seconds. ARG may be a float, meaning pause for some fractional part of a second. It is recommended that you never call sleep-for from inside of a process filter function or timer event (either synchronous or asynchronous). arguments: (SECONDS) Fsit-for Perform redisplay, then wait ARG seconds or until user input is available. ARG may be a float, meaning a fractional part of a second. Optional second arg non-nil means don't redisplay, just wait for input. Redisplay is preempted as always if user input arrives, and does not happen if input is available before it starts. Value is t if waited the full time with no input arriving. If sit-for is called from within a process filter function or timer event (either synchronous or asynchronous) it will return immediately. arguments: (SECONDS &optional NODISPLAY) Faccelerate-menu Make the menubar active. Menu items can be selected using menu accelerators or by actions defined in menu-accelerator-map. arguments: () Frecent-keys Return a vector of recent keyboard or mouse button events read. If NUMBER is non-nil, not more than NUMBER events will be returned. Change number of events stored using `set-recent-keys-size'. This copies the event objects into a new vector; it is safe to keep and modify them. arguments: (&optional NUMBER) Frecent-keys-ring-size The maximum number of events `recent-keys' can return. arguments: () Fset-recent-keys-ring-size Set the maximum number of events to be stored internally. arguments: (SIZE) Fdispatch-event Given an event object as returned by `next-event', execute it. Key-press, button-press, and button-release events get accumulated until a complete key sequence (see `read-key-sequence') is reached, at which point the sequence is looked up in the current keymaps and acted upon. Mouse motion events cause the low-level handling function stored in `mouse-motion-handler' to be called. (There are very few circumstances under which you should change this handler. Use `mode-motion-hook' instead.) Menu, timeout, and eval events cause the associated function or handler to be called. Process events cause the subprocess's output to be read and acted upon appropriately (see `start-process'). Magic events are handled as necessary. arguments: (EVENT) Fread-key-sequence Read a sequence of keystrokes or mouse clicks. Returns a vector of the event objects read. The vector and the event objects it contains are freshly created (and will not be side-effected by subsequent calls to this function). The sequence read is sufficient to specify a non-prefix command starting from the current local and global keymaps. A C-g typed while in this function is treated like any other character, and `quit-flag' is not set. First arg PROMPT is a prompt string. If nil, do not prompt specially. Second (optional) arg CONTINUE-ECHO, if non-nil, means this key echoes as a continuation of the previous key. The third (optional) arg DONT-DOWNCASE-LAST, if non-nil, means do not convert the last event to lower case. (Normally any upper case event is converted to lower case if the original event is undefined and the lower case equivalent is defined.) This argument is provided mostly for FSF compatibility; the equivalent effect can be achieved more generally by binding `retry-undefined-key-binding-unshifted' to nil around the call to `read-key-sequence'. A C-g typed while in this function is treated like any other character, and `quit-flag' is not set. If the user selects a menu item while we are prompting for a key-sequence, the returned value will be a vector of a single menu-selection event. An error will be signalled if you pass this value to `lookup-key' or a related function. `read-key-sequence' checks `function-key-map' for function key sequences, where they wouldn't conflict with ordinary bindings. See `function-key-map' for more details. arguments: (PROMPT &optional CONTINUE-ECHO DONT-DOWNCASE-LAST) Fthis-command-keys Return a vector of the keyboard or mouse button events that were used to invoke this command. This copies the vector and the events; it is safe to keep and modify them. arguments: () Freset-this-command-lengths Used for complicated reasons in `universal-argument-other-key'. `universal-argument-other-key' rereads the event just typed. It then gets translated through `function-key-map'. The translated event gets included in the echo area and in the value of `this-command-keys' in addition to the raw original event. That is not right. Calling this function directs the translated event to replace the original event, so that only one version of the event actually appears in the echo area and in the value of `this-command-keys.'. arguments: () Fopen-dribble-file Start writing all keyboard characters to a dribble file called FILE. If FILE is nil, close any open dribble file. arguments: (FILE) Vecho-keystrokes *Nonzero means echo unfinished commands after this many seconds of pause.Vauto-save-interval *Number of keyboard input characters between auto-saves. Zero means disable autosaving due to number of characters typed. See also the variable `auto-save-timeout'.Vpre-command-hook Function or functions to run before every command. This may examine the `this-command' variable to find out what command is about to be run, or may change it to cause a different command to run. Function on this hook must be careful to avoid signalling errors!Vpost-command-hook Function or functions to run after every command. This may examine the `this-command' variable to find out what command was just executed.Vpre-idle-hook Normal hook run when XEmacs it about to be idle. This occurs whenever it is going to block, waiting for an event. This generally happens as a result of a call to `next-event', `next-command-event', `sit-for', `sleep-for', `accept-process-output', `x-get-selection', or various Energize-specific commands. Errors running the hook are caught and ignored.Vfocus-follows-mouse *Variable to control XEmacs behavior with respect to focus changing. If this variable is set to t, then XEmacs will not gratuitously change the keyboard focus. XEmacs cannot in general detect when this mode is use by the window manager, so it is up to the user to set it.Vlast-command-event Last keyboard or mouse button event that was part of a command. This variable is off limits: you may not set its value or modify the event that is its value, as it is destructively modified by `read-key-sequence'. If you want to keep a pointer to this value, you must use `copy-event'.Vlast-command-char If the value of `last-command-event' is a keyboard event, then this is the nearest ASCII equivalent to it. This is the value that `self-insert-command' will put in the buffer. Remember that there is NOT a 1:1 mapping between keyboard events and ASCII characters: the set of keyboard events is much larger, so writing code that examines this variable to determine what key has been typed is bad practice, unless you are certain that it will be one of a small set of characters.Vlast-input-event Last keyboard or mouse button event received. This variable is off limits: you may not set its value or modify the event that is its value, as it is destructively modified by `next-event'. If you want to keep a pointer to this value, you must use `copy-event'.Vcurrent-mouse-event The mouse-button event which invoked this command, or nil. This is usually what `(interactive "e")' returns.Vlast-input-char If the value of `last-input-event' is a keyboard event, then this is the nearest ASCII equivalent to it. Remember that there is NOT a 1:1 mapping between keyboard events and ASCII characters: the set of keyboard events is much larger, so writing code that examines this variable to determine what key has been typed is bad practice, unless you are certain that it will be one of a small set of characters.Vlast-input-time The time (in seconds since Jan 1, 1970) of the last-command-event, represented as a cons of two 16-bit integers. This is destructively modified, so copy it if you want to keep it.Vunread-command-events List of event objects to be read as next command input events. This can be used to simulate the receipt of events from the user. Normally this is nil. Events are removed from the front of this list.Vunread-command-event Obsolete. Use `unread-command-events' instead.Vlast-command The last command executed. Normally a symbol with a function definition, but can be whatever was found in the keymap, or whatever the variable `this-command' was set to by that command.Vthis-command The command now being executed. The command can set this variable; whatever is put here will be in `last-command' during the following command.Vhelp-char Character to recognize as meaning Help. When it is read, do `(eval help-form)', and display result if it's a string. If the value of `help-form' is nil, this char can be read normally. This can be any form recognized as a single key specifier. The help-char cannot be a negative number in XEmacs.Vhelp-form Form to execute when character help-char is read. If the form returns a string, that string is displayed. If `help-form' is nil, the help char is not recognized.Vprefix-help-command Command to run when `help-char' character follows a prefix key. This command is used only when there is no actual binding for that character after that prefix key.Vkeyboard-translate-table Hash table used as translate table for keyboard input. Use `keyboard-translate' to portably add entries to this table. Each key-press event is looked up in this table as follows: -- If an entry maps a symbol to a symbol, then a key-press event whose keysym is the former symbol (with any modifiers at all) gets its keysym changed and its modifiers left alone. This is useful for dealing with non-standard X keyboards, such as the grievous damage that Sun has inflicted upon the world. -- If an entry maps a character to a character, then a key-press event matching the former character gets converted to a key-press event matching the latter character. This is useful on ASCII terminals for (e.g.) making C-\ look like C-s, to get around flow-control problems. -- If an entry maps a character to a symbol, then a key-press event matching the character gets converted to a key-press event whose keysym is the given symbol and which has no modifiers.Vretry-undefined-key-binding-unshifted If a key-sequence which ends with a shifted keystroke is undefined and this variable is non-nil then the command lookup is retried again with the last key unshifted. (e.g. C-X C-F would be retried as C-X C-f.) If lookup still fails, a normal error is signalled. In general, you should *bind* this, not set it.VVcomposed_character_default_binding The default keybinding to use for key events from composed input. Window systems frequently have ways to allow the user to compose single characters in a language using multiple keystrokes. XEmacs sees these as single character keypress events.Vdebug-emacs-events If non-zero, display debug information about Emacs events that XEmacs sees. Information is displayed on stderr. Before the event, the source of the event is displayed in parentheses, and is one of the following: (real) A real event from the window system or terminal driver, as far as XEmacs can tell. (keyboard macro) An event generated from a keyboard macro. (unread-command-events) An event taken from `unread-command-events'. (unread-command-event) An event taken from `unread-command-event'. (command event queue) An event taken from an internal queue. Events end up on this queue when `enqueue-eval-event' is called or when user or eval events are received while XEmacs is blocking (e.g. in `sit-for', `sleep-for', or `accept-process-output', or while waiting for the reply to an X selection). (->keyboard-translate-table) The result of an event translated through keyboard-translate-table. Note that in this case, two events are printed even though only one is really generated. (SIGINT) A faked C-g resulting when XEmacs receives a SIGINT (e.g. C-c was pressed in XEmacs' controlling terminal or the signal was explicitly sent to the XEmacs process).Vinhibit-input-event-recording Non-nil inhibits recording of input-events to recent-keys ring.Vmenu-accelerator-prefix Prefix key(s) that must be typed before menu accelerators will be activated. Set this to a value acceptable by define-key.Vmenu-accelerator-modifiers Modifier keys which must be pressed to get to the top level menu accelerators. This is a list of modifier key symbols. All modifier keys must be held down while a valid menu accelerator key is pressed in order for the top level menu to become active. See also menu-accelerator-enabled and menu-accelerator-prefix.Vmenu-accelerator-enabled Whether menu accelerator keys can cause the menubar to become active. If 'menu-force or 'menu-fallback, then menu accelerator keys can be used to activate the top level menu. Once the menubar becomes active, the accelerator keys can be used regardless of the value of this variable. menu-force is used to indicate that the menu accelerator key takes precedence over bindings in the current keymap(s). menu-fallback means that bindings in the current keymap take precedence over menu accelerator keys. Thus a top level menu with an accelerator of "T" would be activated on a keypress of Meta-t if menu-accelerator-enabled is menu-force. However, if menu-accelerator-enabled is menu-fallback, then Meta-t will not activate the menubar and will instead run the function transpose-words, to which it is normally bound. See also menu-accelerator-modifiers and menu-accelerator-prefix.Vmenu-accelerator-map Keymap for use when the menubar is active. The actions menu-quit, menu-up, menu-down, menu-left, menu-right, menu-select and menu-escape can be mapped to keys in this map. menu-quit Immediately deactivate the menubar and any open submenus without selecting an item. menu-up Move the menu cursor up one row in the current menu. If the move extends past the top of the menu, wrap around to the bottom. menu-down Move the menu cursor down one row in the current menu. If the move extends past the bottom of the menu, wrap around to the top. If executed while the cursor is in the top level menu, move down into the selected menu. menu-left Move the cursor from a submenu into the parent menu. If executed while the cursor is in the top level menu, move the cursor to the left. If the move extends past the left edge of the menu, wrap around to the right edge. menu-right Move the cursor into a submenu. If the cursor is located in the top level menu or is not currently on a submenu heading, then move the cursor to the next top level menu entry. If the move extends past the right edge of the menu, wrap around to the left edge. menu-select Activate the item under the cursor. If the cursor is located on a submenu heading, then move the cursor into the submenu. menu-escape Pop up to the next level of menus. Moves from a submenu into its parent menu. From the top level menu, this deactivates the menubar. This keymap can also contain normal key-command bindings, in which case the menubar is deactivated and the corresponding command is executed. The action bindings used by the menu accelerator code are designed to mimic the actions of menu traversal keys in a commonly used PC operating system.Fextentp T if OBJECT is an extent. arguments: (OBJECT) Fextent-live-p T if OBJECT is an extent and the extent has not been destroyed. arguments: (OBJECT) Fextent-detached-p T if EXTENT is detached. arguments: (EXTENT) Fextent-object Return object (buffer or string) EXTENT refers to. arguments: (EXTENT) Fextent-start-position Return start position of EXTENT, or nil if EXTENT is detached. arguments: (EXTENT) Fextent-end-position Return end position of EXTENT, or nil if EXTENT is detached. arguments: (EXTENT) Fextent-length Return length of EXTENT in characters. arguments: (EXTENT) Fnext-extent Find next extent after EXTENT. If EXTENT is a buffer return the first extent in the buffer; likewise for strings. Extents in a buffer are ordered in what is called the "display" order, which sorts by increasing start positions and then by *decreasing* end positions. If you want to perform an operation on a series of extents, use `map-extents' instead of this function; it is much more efficient. The primary use of this function should be to enumerate all the extents in a buffer. Note: The display order is not necessarily the order that `map-extents' processes extents in! arguments: (EXTENT) Fprevious-extent Find last extent before EXTENT. If EXTENT is a buffer return the last extent in the buffer; likewise for strings. This function is analogous to `next-extent'. arguments: (EXTENT) Fnext-e-extent Find next extent after EXTENT using the "e" order. If EXTENT is a buffer return the first extent in the buffer; likewise for strings. arguments: (EXTENT) Fprevious-e-extent Find last extent before EXTENT using the "e" order. If EXTENT is a buffer return the last extent in the buffer; likewise for strings. This function is analogous to `next-e-extent'. arguments: (EXTENT) Fnext-extent-change Return the next position after POS where an extent begins or ends. If POS is at the end of the buffer or string, POS will be returned; otherwise a position greater than POS will always be returned. If BUFFER is nil, the current buffer is assumed. arguments: (POS &optional OBJECT) Fprevious-extent-change Return the last position before POS where an extent begins or ends. If POS is at the beginning of the buffer or string, POS will be returned; otherwise a position less than POS will always be returned. If OBJECT is nil, the current buffer is assumed. arguments: (POS &optional OBJECT) Fextent-parent Return the parent (if any) of EXTENT. If an extent has a parent, it derives all its properties from that extent and has no properties of its own. (The only "properties" that the extent keeps are the buffer/string it refers to and the start and end points.) It is possible for an extent's parent to itself have a parent. arguments: (EXTENT) Fextent-children Return a list of the children (if any) of EXTENT. The children of an extent are all those extents whose parent is that extent. This function does not recursively trace children of children. (To do that, use `extent-descendants'.) arguments: (EXTENT) Fset-extent-parent Set the parent of EXTENT to PARENT (may be nil). See `extent-parent'. arguments: (EXTENT PARENT) Fmake-extent Make an extent for the range [FROM, TO) in BUFFER-OR-STRING. BUFFER-OR-STRING defaults to the current buffer. Insertions at point TO will be outside of the extent; insertions at FROM will be inside the extent, causing the extent to grow. (This is the same way that markers behave.) You can change the behavior of insertions at the endpoints using `set-extent-property'. The extent is initially detached if both FROM and TO are nil, and in this case BUFFER-OR-STRING defaults to nil, meaning the extent is in no buffer and no string. arguments: (FROM TO &optional BUFFER-OR-STRING) Fcopy-extent Make a copy of EXTENT. It is initially detached. Optional argument BUFFER-OR-STRING defaults to EXTENT's buffer or string. arguments: (EXTENT &optional BUFFER-OR-STRING) Fdelete-extent Remove EXTENT from its buffer and destroy it. This does not modify the buffer's text, only its display properties. The extent cannot be used thereafter. arguments: (EXTENT) Fdetach-extent Remove EXTENT from its buffer in such a way that it can be re-inserted. An extent is also detached when all of its characters are all killed by a deletion, unless its `detachable' property has been unset. Extents which have the `duplicable' attribute are tracked by the undo mechanism. Detachment via `detach-extent' and string deletion is recorded, as is attachment via `insert-extent' and string insertion. Extent motion, face changes, and attachment via `make-extent' and `set-extent-endpoints' are not recorded. This means that extent changes which are to be undo-able must be performed by character editing, or by insertion and detachment of duplicable extents. arguments: (EXTENT) Fset-extent-endpoints Set the endpoints of EXTENT to START, END. If START and END are null, call detach-extent on EXTENT. BUFFER-OR-STRING specifies the new buffer or string that the extent should be in, and defaults to EXTENT's buffer or string. (If nil, and EXTENT is in no buffer and no string, it defaults to the current buffer.) See documentation on `detach-extent' for a discussion of undo recording. arguments: (EXTENT START END &optional BUFFER-OR-STRING) Fextent-in-region-p Return whether EXTENT overlaps a specified region. This is equivalent to whether `map-extents' would visit EXTENT when called with these args. arguments: (EXTENT &optional FROM TO FLAGS) Fmap-extents Map FUNCTION over the extents which overlap a region in OBJECT. OBJECT is normally a buffer or string but could be an extent (see below). The region is normally bounded by [FROM, TO) (i.e. the beginning of the region is closed and the end of the region is open), but this can be changed with the FLAGS argument (see below for a complete discussion). FUNCTION is called with the arguments (extent, MAPARG). The arguments OBJECT, FROM, TO, MAPARG, and FLAGS are all optional and default to the current buffer, the beginning of OBJECT, the end of OBJECT, nil, and nil, respectively. `map-extents' returns the first non-nil result produced by FUNCTION, and no more calls to FUNCTION are made after it returns non-nil. If OBJECT is an extent, FROM and TO default to the extent's endpoints, and the mapping omits that extent and its predecessors. This feature supports restarting a loop based on `map-extents'. Note: OBJECT must be attached to a buffer or string, and the mapping is done over that buffer or string. An extent overlaps the region if there is any point in the extent that is also in the region. (For the purpose of overlap, zero-length extents and regions are treated as closed on both ends regardless of their endpoints' specified open/closedness.) Note that the endpoints of an extent or region are considered to be in that extent or region if and only if the corresponding end is closed. For example, the extent [5,7] overlaps the region [2,5] because 5 is in both the extent and the region. However, (5,7] does not overlap [2,5] because 5 is not in the extent, and neither [5,7] nor (5,7] overlaps the region [2,5) because 5 is not in the region. The optional FLAGS can be a symbol or a list of one or more symbols, modifying the behavior of `map-extents'. Allowed symbols are: end-closed The region's end is closed. start-open The region's start is open. all-extents-closed Treat all extents as closed on both ends for the purpose of determining whether they overlap the region, irrespective of their actual open- or closedness. all-extents-open Treat all extents as open on both ends. all-extents-closed-open Treat all extents as start-closed, end-open. all-extents-open-closed Treat all extents as start-open, end-closed. start-in-region In addition to the above conditions for extent overlap, the extent's start position must lie within the specified region. Note that, for this condition, open start positions are treated as if 0.5 was added to the endpoint's value, and open end positions are treated as if 0.5 was subtracted from the endpoint's value. end-in-region The extent's end position must lie within the region. start-and-end-in-region Both the extent's start and end positions must lie within the region. start-or-end-in-region Either the extent's start or end position must lie within the region. negate-in-region The condition specified by a `*-in-region' flag must NOT hold for the extent to be considered. At most one of `all-extents-closed', `all-extents-open', `all-extents-closed-open', and `all-extents-open-closed' may be specified. At most one of `start-in-region', `end-in-region', `start-and-end-in-region', and `start-or-end-in-region' may be specified. If optional arg PROPERTY is non-nil, only extents with that property set on them will be visited. If optional arg VALUE is non-nil, only extents whose value for that property is `eq' to VALUE will be visited. arguments: (FUNCTION &optional OBJECT FROM TO MAPARG FLAGS PROPERTY VALUE) Fmap-extent-children Map FUNCTION over the extents in the region from FROM to TO. FUNCTION is called with arguments (extent, MAPARG). See `map-extents' for a full discussion of the arguments FROM, TO, and FLAGS. The arguments are the same as for `map-extents', but this function differs in that it only visits extents which start in the given region, and also in that, after visiting an extent E, it skips all other extents which start inside E but end before E's end. Thus, this function may be used to walk a tree of extents in a buffer: (defun walk-extents (buffer &optional ignore) (map-extent-children 'walk-extents buffer)) arguments: (FUNCTION &optional OBJECT FROM TO MAPARG FLAGS PROPERTY VALUE) Fextent-at Find "smallest" extent at POS in OBJECT having PROPERTY set. Normally, an extent is "at" POS if it overlaps the region (POS, POS+1); i.e. if it covers the character after POS. (However, see the definition of AT-FLAG.) "Smallest" means the extent that comes last in the display order; this normally means the extent whose start position is closest to POS. See `next-extent' for more information. OBJECT specifies a buffer or string and defaults to the current buffer. PROPERTY defaults to nil, meaning that any extent will do. Properties are attached to extents with `set-extent-property', which see. Returns nil if POS is invalid or there is no matching extent at POS. If the fourth argument BEFORE is not nil, it must be an extent; any returned extent will precede that extent. This feature allows `extent-at' to be used by a loop over extents. AT-FLAG controls how end cases are handled, and should be one of: nil or `after' An extent is at POS if it covers the character after POS. This is consistent with the way that text properties work. `before' An extent is at POS if it covers the character before POS. `at' An extent is at POS if it overlaps or abuts POS. This includes all zero-length extents at POS. Note that in all cases, the start-openness and end-openness of the extents considered is ignored. If you want to pay attention to those properties, you should use `map-extents', which gives you more control. arguments: (POS &optional OBJECT PROPERTY BEFORE AT-FLAG) Fset-extent-initial-redisplay-function Note: This feature is experimental! Set initial-redisplay-function of EXTENT to the function FUNCTION. The first time the EXTENT is (re)displayed, an eval event will be dispatched calling FUNCTION with EXTENT as its only argument. arguments: (EXTENT FUNCTION) Fextent-face Return the name of the face in which EXTENT is displayed, or nil if the extent's face is unspecified. This might also return a list of face names. arguments: (EXTENT) Fset-extent-face Make the given EXTENT have the graphic attributes specified by FACE. FACE can also be a list of faces, and all faces listed will apply, with faces earlier in the list taking priority over those later in the list. arguments: (EXTENT FACE) Fextent-mouse-face Return the face used to highlight EXTENT when the mouse passes over it. The return value will be a face name, a list of face names, or nil if the extent's mouse face is unspecified. arguments: (EXTENT) Fset-extent-mouse-face Set the face used to highlight EXTENT when the mouse passes over it. FACE can also be a list of faces, and all faces listed will apply, with faces earlier in the list taking priority over those later in the list. arguments: (EXTENT FACE) Fset-extent-begin-glyph Display a bitmap, subwindow or string at the beginning of EXTENT. BEGIN-GLYPH must be a glyph object. The layout policy defaults to `text'. arguments: (EXTENT BEGIN-GLYPH &optional LAYOUT) Fset-extent-end-glyph Display a bitmap, subwindow or string at the end of the EXTENT. END-GLYPH must be a glyph object. The layout policy defaults to `text'. arguments: (EXTENT END-GLYPH &optional LAYOUT) Fextent-begin-glyph Return the glyph object displayed at the beginning of EXTENT. If there is none, nil is returned. arguments: (EXTENT-OBJ) Fextent-end-glyph Return the glyph object displayed at the end of EXTENT. If there is none, nil is returned. arguments: (EXTENT-OBJ) Fset-extent-begin-glyph-layout Set the layout policy of the given extent's begin glyph. Access this using the `extent-begin-glyph-layout' function. arguments: (EXTENT LAYOUT) Fset-extent-end-glyph-layout Set the layout policy of the given extent's end glyph. Access this using the `extent-end-glyph-layout' function. arguments: (EXTENT LAYOUT) Fextent-begin-glyph-layout Return the layout policy associated with the given extent's begin glyph. Set this using the `set-extent-begin-glyph-layout' function. arguments: (EXTENT) Fextent-end-glyph-layout Return the layout policy associated with the given extent's end glyph. Set this using the `set-extent-end-glyph-layout' function. arguments: (EXTENT) Fset-extent-priority Changes the display priority of EXTENT. When the extent attributes are being merged for display, the priority is used to determine which extent takes precedence in the event of a conflict (two extents whose faces both specify font, for example: the font of the extent with the higher priority will be used). Extents are created with priority 0; priorities may be negative. arguments: (EXTENT PRI) Fextent-priority Return the display priority of EXTENT; see `set-extent-priority'. arguments: (EXTENT) Fset-extent-property Change a property of an extent. PROPERTY may be any symbol; the value stored may be accessed with the `extent-property' function. The following symbols have predefined meanings: detached Removes the extent from its buffer; setting this is the same as calling `detach-extent'. destroyed Removes the extent from its buffer, and makes it unusable in the future; this is the same calling `delete-extent'. priority Change redisplay priority; same as `set-extent-priority'. start-open Whether the set of characters within the extent is treated being open on the left, that is, whether the start position is an exclusive, rather than inclusive, boundary. If true, then characters inserted exactly at the beginning of the extent will remain outside of the extent; otherwise they will go into the extent, extending it. end-open Whether the set of characters within the extent is treated being open on the right, that is, whether the end position is an exclusive, rather than inclusive, boundary. If true, then characters inserted exactly at the end of the extent will remain outside of the extent; otherwise they will go into the extent, extending it. By default, extents have the `end-open' but not the `start-open' property set. read-only Text within this extent will be unmodifiable. initial-redisplay-function (EXPERIMENTAL) function to be called the first time (part of) the extent is redisplayed. It will be called with the extent as its first argument. Note: The function will not be called immediately during redisplay, an eval event will be dispatched. detachable Whether the extent gets detached (as with `detach-extent') when all the text within the extent is deleted. This is true by default. If this property is not set, the extent becomes a zero-length extent when its text is deleted. (In such a case, the `start-open' property is automatically removed if both the `start-open' and `end-open' properties are set, since zero-length extents open on both ends are not allowed.) face The face in which to display the text. Setting this is the same as calling `set-extent-face'. mouse-face If non-nil, the extent will be highlighted in this face when the mouse moves over it. pointer If non-nil, and a valid pointer glyph, this specifies the shape of the mouse pointer while over the extent. highlight Obsolete: Setting this property is equivalent to setting a `mouse-face' property of `highlight'. Reading this property returns non-nil if the extent has a non-nil `mouse-face' property. duplicable Whether this extent should be copied into strings, so that kill, yank, and undo commands will restore or copy it. `duplicable' extents are copied from an extent into a string when `buffer-substring' or a similar function creates a string. The extents in a string are copied into other strings created from the string using `concat' or `substring'. When `insert' or a similar function inserts the string into a buffer, the extents are copied back into the buffer. unique Meaningful only in conjunction with `duplicable'. When this is set, there may be only one instance of this extent attached at a time: if it is copied to the kill ring and then yanked, the extent is not copied. If, however, it is killed (removed from the buffer) and then yanked, it will be re-attached at the new position. invisible If the value is non-nil, text under this extent may be treated as not present for the purpose of redisplay, or may be displayed using an ellipsis or other marker; see `buffer-invisibility-spec' and `invisible-text-glyph'. In all cases, however, the text is still visible to other functions that examine a buffer's text. keymap This keymap is consulted for mouse clicks on this extent, or keypresses made while point is within the extent. copy-function This is a hook that is run when a duplicable extent is about to be copied from a buffer to a string (or the kill ring). It is called with three arguments, the extent, and the buffer-positions within it which are being copied. If this function returns nil, then the extent will not be copied; otherwise it will. paste-function This is a hook that is run when a duplicable extent is about to be copied from a string (or the kill ring) into a buffer. It is called with three arguments, the original extent, and the buffer positions which the copied extent will occupy. (This hook is run after the corresponding text has already been inserted into the buffer.) Note that the extent argument may be detached when this function is run. If this function returns nil, no extent will be inserted. Otherwise, there will be an extent covering the range in question. If the original extent is not attached to a buffer, then it will be re-attached at this range. Otherwise, a copy will be made, and that copy attached here. The copy-function and paste-function are meaningful only for extents with the `duplicable' flag set, and if they are not specified, behave as if `t' was the returned value. When these hooks are invoked, the current buffer is the buffer which the extent is being copied from/to, respectively. begin-glyph A glyph to be displayed at the beginning of the extent, or nil. end-glyph A glyph to be displayed at the end of the extent, or nil. begin-glyph-layout The layout policy (one of `text', `whitespace', `inside-margin', or `outside-margin') of the extent's begin glyph. end-glyph-layout The layout policy of the extent's end glyph. arguments: (EXTENT PROPERTY VALUE) Fset-extent-properties Change some properties of EXTENT. PLIST is a property list. For a list of built-in properties, see `set-extent-property'. arguments: (EXTENT PLIST) Fextent-property Return EXTENT's value for property PROPERTY. See `set-extent-property' for the built-in property names. arguments: (EXTENT PROPERTY &optional DEFAULT) Fextent-properties Return a property list of the attributes of the given extent. Do not modify this list; use `set-extent-property' instead. arguments: (EXTENT) Fforce-highlight-extent Highlight or unhighlight the given extent. If the second arg is non-nil, it will be highlighted, else dehighlighted. This is the same as `highlight-extent', except that it will work even on extents without the `mouse-face' property. arguments: (EXTENT-OBJ &optional HIGHLIGHT-P) Fhighlight-extent Highlight the given extent, if it is highlightable (that is, if it has the `mouse-face' property). If the second arg is non-nil, it will be highlighted, else dehighlighted. Highlighted extents are displayed as if they were merged with the face or faces specified by the `mouse-face' property. arguments: (EXTENT-OBJ &optional HIGHLIGHT-P) Finsert-extent Insert EXTENT from START to END in BUFFER-OR-STRING. BUFFER-OR-STRING defaults to the current buffer if omitted. This operation does not insert any characters, but otherwise acts as if there were a replicating extent whose parent is EXTENT in some string that was just inserted. Returns the newly-inserted extent. The fourth arg, NO-HOOKS, can be used to inhibit the running of the extent's `paste-function' property if it has one. See documentation on `detach-extent' for a discussion of undo recording. arguments: (EXTENT &optional START END NO-HOOKS BUFFER-OR-STRING) Fget-text-property Returns the value of the PROP property at the given position. Optional arg OBJECT specifies the buffer or string to look in, and defaults to the current buffer. Optional arg AT-FLAG controls what it means for a property to be "at" a position, and has the same meaning as in `extent-at'. This examines only those properties added with `put-text-property'. See also `get-char-property'. arguments: (POS PROP &optional OBJECT AT-FLAG) Fget-char-property Returns the value of the PROP property at the given position. Optional arg OBJECT specifies the buffer or string to look in, and defaults to the current buffer. Optional arg AT-FLAG controls what it means for a property to be "at" a position, and has the same meaning as in `extent-at'. This examines properties on all extents. See also `get-text-property'. arguments: (POS PROP &optional OBJECT AT-FLAG) Fput-text-property Adds the given property/value to all characters in the specified region. The property is conceptually attached to the characters rather than the region. The properties are copied when the characters are copied/pasted. Fifth argument OBJECT is the buffer or string containing the text, and defaults to the current buffer. arguments: (START END PROP VALUE &optional OBJECT) Fput-nonduplicable-text-property Adds the given property/value to all characters in the specified region. The property is conceptually attached to the characters rather than the region, however the properties will not be copied when the characters are copied. Fifth argument OBJECT is the buffer or string containing the text, and defaults to the current buffer. arguments: (START END PROP VALUE &optional OBJECT) Fadd-text-properties Add properties to the characters from START to END. The third argument PROPS is a property list specifying the property values to add. The optional fourth argument, OBJECT, is the buffer or string containing the text and defaults to the current buffer. Returns t if any property was changed, nil otherwise. arguments: (START END PROPS &optional OBJECT) Fadd-nonduplicable-text-properties Add nonduplicable properties to the characters from START to END. (The properties will not be copied when the characters are copied.) The third argument PROPS is a property list specifying the property values to add. The optional fourth argument, OBJECT, is the buffer or string containing the text and defaults to the current buffer. Returns t if any property was changed, nil otherwise. arguments: (START END PROPS &optional OBJECT) Fremove-text-properties Remove the given properties from all characters in the specified region. PROPS should be a plist, but the values in that plist are ignored (treated as nil). Returns t if any property was changed, nil otherwise. Fourth argument OBJECT is the buffer or string containing the text, and defaults to the current buffer. arguments: (START END PROPS &optional OBJECT) Ftext-prop-extent-paste-function Used as the `paste-function' property of `text-prop' extents. arguments: (EXTENT FROM TO) Fnext-single-property-change Return the position of next property change for a specific property. Scans characters forward from POS till it finds a change in the PROP property, then returns the position of the change. The optional third argument OBJECT is the buffer or string to scan (defaults to the current buffer). The property values are compared with `eq'. Return nil if the property is constant all the way to the end of BUFFER. If the value is non-nil, it is a position greater than POS, never equal. If the optional fourth argument LIMIT is non-nil, don't search past position LIMIT; return LIMIT if nothing is found before LIMIT. If two or more extents with conflicting non-nil values for PROP overlap a particular character, it is undefined which value is considered to be the value of PROP. (Note that this situation will not happen if you always use the text-property primitives.) arguments: (POS PROP &optional OBJECT LIMIT) Fprevious-single-property-change Return the position of next property change for a specific property. Scans characters backward from POS till it finds a change in the PROP property, then returns the position of the change. The optional third argument OBJECT is the buffer or string to scan (defaults to the current buffer). The property values are compared with `eq'. Return nil if the property is constant all the way to the start of BUFFER. If the value is non-nil, it is a position less than POS, never equal. If the optional fourth argument LIMIT is non-nil, don't search back past position LIMIT; return LIMIT if nothing is found until LIMIT. If two or more extents with conflicting non-nil values for PROP overlap a particular character, it is undefined which value is considered to be the value of PROP. (Note that this situation will not happen if you always use the text-property primitives.) arguments: (POS PROP &optional OBJECT LIMIT) Vmouse-highlight-priority The priority to use for the mouse-highlighting pseudo-extent that is used to highlight extents with the `mouse-face' attribute set. See `set-extent-priority'.Vdefault-text-properties Property list giving default values for text properties. Whenever a character does not specify a value for a property, the value stored in this list is used instead. This only applies when the functions `get-text-property' or `get-char-property' are called.Ffacep Return non-nil if OBJECT is a face. arguments: (OBJECT) Ffind-face Retrieve the face of the given name. If FACE-OR-NAME is a face object, it is simply returned. Otherwise, FACE-OR-NAME should be a symbol. If there is no such face, nil is returned. Otherwise the associated face object is returned. arguments: (FACE-OR-NAME) Fget-face Retrieve the face of the given name. Same as `find-face' except an error is signalled if there is no such face instead of returning nil. arguments: (NAME) Fface-name Return the name of the given face. arguments: (FACE) Fbuilt-in-face-specifiers Return a list of all built-in face specifier properties. Don't modify this list! arguments: () Fface-list Return a list of the names of all defined faces. If TEMPORARY is nil, only the permanent faces are included. If it is t, only the temporary faces are included. If it is any other non-nil value both permanent and temporary are included. arguments: (&optional TEMPORARY) Fmake-face Defines and returns a new FACE described by DOC-STRING. You can modify the font, color, etc of a face with the set-face- functions. If the face already exists, it is unmodified. If TEMPORARY is non-nil, this face will cease to exist if not in use. arguments: (NAME &optional DOC-STRING TEMPORARY) Fcopy-face Defines and returns a new face which is a copy of an existing one, or makes an already-existing face be exactly like another. LOCALE, TAG-SET, EXACT-P, and HOW-TO-ADD are as in `copy-specifier'. arguments: (OLD-FACE NEW-NAME &optional LOCALE TAG-SET EXACT-P HOW-TO-ADD) Ffind-file-name-handler Return FILENAME's handler function for OPERATION, if it has one. Otherwise, return nil. A file name is handled if one of the regular expressions in `file-name-handler-alist' matches it. If OPERATION equals `inhibit-file-name-operation', then we ignore any handlers that are members of `inhibit-file-name-handlers', but we still do run any other handlers. This lets handlers use the standard functions without calling themselves recursively. arguments: (FILENAME &optional OPERATION) Ffile-name-directory Return the directory component in file name NAME. Return nil if NAME does not include a directory. Otherwise return a directory spec. Given a Unix syntax file name, returns a string ending in slash; on VMS, perhaps instead a string ending in `:', `]' or `>'. arguments: (FILE) Ffile-name-nondirectory Return file name NAME sans its directory. For example, in a Unix-syntax file name, this is everything after the last slash, or the entire name if it contains no slash. arguments: (FILE) Funhandled-file-name-directory Return a directly usable directory name somehow associated with FILENAME. A `directly usable' directory name is one that may be used without the intervention of any file handler. If FILENAME is a directly usable file itself, return (file-name-directory FILENAME). The `call-process' and `start-process' functions use this function to get a current directory to run processes in. arguments: (FILENAME) Ffile-name-as-directory Return a string representing file FILENAME interpreted as a directory. This operation exists because a directory is also a file, but its name as a directory is different from its name as a file. The result can be used as the value of `default-directory' or passed as second argument to `expand-file-name'. For a Unix-syntax file name, just appends a slash. On VMS, converts "[X]FOO.DIR" to "[X.FOO]", etc. arguments: (FILE) Fdirectory-file-name Return the file name of the directory named DIR. This is the name of the file that holds the data for the directory DIR. This operation exists because a directory is also a file, but its name as a directory is different from its name as a file. In Unix-syntax, this function just removes the final slash. On VMS, given a VMS-syntax directory name such as "[X.Y]", it returns a file name such as "[X]Y.DIR.1". arguments: (DIRECTORY) Fmake-temp-name Generate temporary file name (string) starting with PREFIX (a string). The Emacs process number forms part of the result, so there is no danger of generating a name being used by another process. arguments: (PREFIX) Fexpand-file-name Convert FILENAME to absolute, and canonicalize it. Second arg DEFAULT is directory to start with if FILENAME is relative (does not start with slash); if DEFAULT is nil or missing, the current buffer's value of default-directory is used. Path components that are `.' are removed, and path components followed by `..' are removed, along with the `..' itself; note that these simplifications are done without checking the resulting paths in the file system. An initial `~/' expands to your home directory. An initial `~USER/' expands to USER's home directory. See also the function `substitute-in-file-name'. arguments: (NAME &optional DEFAULT) Ffile-truename Return the canonical name of the given FILE. Second arg DEFAULT is directory to start with if FILE is relative (does not start with slash); if DEFAULT is nil or missing, the current buffer's value of default-directory is used. No component of the resulting pathname will be a symbolic link, as in the realpath() function. arguments: (FILENAME &optional DEFAULT) Fsubstitute-in-file-name Substitute environment variables referred to in FILENAME. `$FOO' where FOO is an environment variable name means to substitute the value of that variable. The variable name should be terminated with a character not a letter, digit or underscore; otherwise, enclose the entire variable name in braces. If `/~' appears, all of FILENAME through that `/' is discarded. On VMS, `$' substitution is not done; this function does little and only duplicates what `expand-file-name' does. arguments: (STRING) Fcopy-file Copy FILE to NEWNAME. Both args must be strings. Signals a `file-already-exists' error if file NEWNAME already exists, unless a third argument OK-IF-ALREADY-EXISTS is supplied and non-nil. A number as third arg means request confirmation if NEWNAME already exists. This is what happens in interactive use with M-x. Fourth arg KEEP-TIME non-nil means give the new file the same last-modified time as the old one. (This works on only some systems.) A prefix arg makes KEEP-TIME non-nil. arguments: (FILENAME NEWNAME &optional OK-IF-ALREADY-EXISTS KEEP-TIME) Fmake-directory-internal Create a directory. One argument, a file name string. arguments: (DIRNAME) Fdelete-directory Delete a directory. One argument, a file name or directory name string. arguments: (DIRNAME) Fdelete-file Delete specified file. One argument, a file name string. If file has multiple names, it continues to exist with the other names. arguments: (FILENAME) Frename-file Rename FILE as NEWNAME. Both args strings. If file has names other than FILE, it continues to have those names. Signals a `file-already-exists' error if a file NEWNAME already exists unless optional third argument OK-IF-ALREADY-EXISTS is non-nil. A number as third arg means request confirmation if NEWNAME already exists. This is what happens in interactive use with M-x. arguments: (FILENAME NEWNAME &optional OK-IF-ALREADY-EXISTS) Fadd-name-to-file Give FILE additional name NEWNAME. Both args strings. Signals a `file-already-exists' error if a file NEWNAME already exists unless optional third argument OK-IF-ALREADY-EXISTS is non-nil. A number as third arg means request confirmation if NEWNAME already exists. This is what happens in interactive use with M-x. arguments: (FILENAME NEWNAME &optional OK-IF-ALREADY-EXISTS) Fmake-symbolic-link Make a symbolic link to FILENAME, named LINKNAME. Both args strings. Signals a `file-already-exists' error if a file LINKNAME already exists unless optional third argument OK-IF-ALREADY-EXISTS is non-nil. A number as third arg means request confirmation if LINKNAME already exists. This happens for interactive use with M-x. arguments: (FILENAME LINKNAME &optional OK-IF-ALREADY-EXISTS) Fdefine-logical-name Define the job-wide logical name NAME to have the value STRING. If STRING is nil or a null string, the logical name NAME is deleted. arguments: (VARNAME STRING) Fsysnetunam Open a network connection to PATH using LOGIN as the login string. arguments: (PATH LOGIN) Ffile-name-absolute-p Return t if file FILENAME specifies an absolute path name. On Unix, this is a name starting with a `/' or a `~'. arguments: (FILENAME) Ffile-exists-p Return t if file FILENAME exists. (This does not mean you can read it.) See also `file-readable-p' and `file-attributes'. arguments: (FILENAME) Ffile-executable-p Return t if FILENAME can be executed by you. For a directory, this means you can access files in that directory. arguments: (FILENAME) Ffile-readable-p Return t if file FILENAME exists and you can read it. See also `file-exists-p' and `file-attributes'. arguments: (FILENAME) Ffile-writable-p Return t if file FILENAME can be written or created by you. arguments: (FILENAME) Ffile-symlink-p Return non-nil if file FILENAME is the name of a symbolic link. The value is the name of the file to which it is linked. Otherwise returns nil. arguments: (FILENAME) Ffile-directory-p Return t if file FILENAME is the name of a directory as a file. A directory name spec may be given instead; then the value is t if the directory so specified exists and really is a directory. arguments: (FILENAME) Ffile-accessible-directory-p Return t if file FILENAME is the name of a directory as a file, and files in that directory can be opened by you. In order to use a directory as a buffer's current directory, this predicate must return true. A directory name spec may be given instead; then the value is t if the directory so specified exists and really is a readable and searchable directory. arguments: (FILENAME) Ffile-regular-p "Return t if file FILENAME is the name of a regular file. This is the sort of file that holds an ordinary stream of data bytes. arguments: (FILENAME) Ffile-modes Return mode bits of FILE, as an integer. arguments: (FILENAME) Fset-file-modes Set mode bits of FILE to MODE (an integer). Only the 12 low bits of MODE are used. arguments: (FILENAME MODE) Fset-default-file-modes Set the file permission bits for newly created files. MASK should be an integer; if a permission's bit in MASK is 1, subsequently created files will not have that permission enabled. Only the low 9 bits are used. This setting is inherited by subprocesses. arguments: (MODE) Fdefault-file-modes Return the default file protection for created files. The umask value determines which permissions are enabled in newly created files. If a permission's bit in the umask is 1, subsequently created files will not have that permission enabled. arguments: () Funix-sync Tell Unix to finish all pending disk updates. arguments: () Ffile-newer-than-file-p Return t if file FILE1 is newer than file FILE2. If FILE1 does not exist, the answer is nil; otherwise, if FILE2 does not exist, the answer is t. arguments: (FILE1 FILE2) Finsert-file-contents-internal Insert contents of file FILENAME after point; no coding-system frobbing. This function is identical to `insert-file-contents' except for the handling of the CODESYS and USED-CODESYS arguments under XEmacs/Mule. (When Mule support is not present, both functions are identical and ignore the CODESYS and USED-CODESYS arguments.) If support for Mule exists in this Emacs, the file is decoded according to CODESYS; if omitted, no conversion happens. If USED-CODESYS is non-nil, it should be a symbol, and the actual coding system that was used for the decoding is stored into it. It will in general be different from CODESYS if CODESYS specifies automatic encoding detection or end-of-line detection. Currently BEG and END refer to byte positions (as opposed to character positions), even in Mule. (Fixing this is very difficult.) arguments: (FILENAME &optional VISIT BEG END REPLACE CODESYS USED-CODESYS) Fwrite-region-internal Write current region into specified file; no coding-system frobbing. This function is identical to `write-region' except for the handling of the CODESYS argument under XEmacs/Mule. (When Mule support is not present, both functions are identical and ignore the CODESYS argument.) If support for Mule exists in this Emacs, the file is encoded according to the value of CODESYS. If this is nil, no code conversion occurs. arguments: (START END FILENAME &optional APPEND VISIT LOCKNAME CODESYS) Fcar-less-than-car Return t if (car A) is numerically less than (car B). arguments: (A B) Fcdr-less-than-cdr Return t if (cdr A) is numerically less than (cdr B). arguments: (A B) Fencrypt-string Encrypt STRING using KEY. arguments: (STRING KEY) Fdecrypt-string Decrypt STRING using KEY. arguments: (STRING KEY) Fverify-visited-file-modtime Return t if last mod time of BUF's visited file matches what BUF records. This means that the file has not been changed since it was visited or saved. arguments: (BUF) Fclear-visited-file-modtime Clear out records of last mod time of visited file. Next attempt to save will certainly not complain of a discrepancy. arguments: () Fvisited-file-modtime Return the current buffer's recorded visited file modification time. The value is a list of the form (HIGH . LOW), like the time values that `file-attributes' returns. arguments: () Fset-visited-file-modtime Update buffer's recorded modification time from the visited file's time. Useful if the buffer was not read from the file normally or if the file itself has been changed for some known benign reason. An argument specifies the modification time value to use (instead of that of the visited file), in the form of a list (HIGH . LOW) or (HIGH LOW). arguments: (&optional TIME-LIST) Fset-buffer-modtime Update BUFFER's recorded modification time from the associated file's modtime, if there is an associated file. If not, use the current time. In either case, if the optional arg TIME is supplied, it will be used if it is either an integer or a cons of two integers. arguments: (BUF &optional IN-TIME) Fdo-auto-save Auto-save all buffers that need it. This is all buffers that have auto-saving enabled and are changed since last auto-saved. Auto-saving writes the buffer into a file so that your editing is not lost if the system crashes. This file is not the file you visited; that changes only when you save. Normally we run the normal hook `auto-save-hook' before saving. Non-nil first argument means do not print any message if successful. Non-nil second argument means save only current buffer. arguments: (&optional NO-MESSAGE CURRENT-ONLY) Fset-buffer-auto-saved Mark current buffer as auto-saved with its current text. No auto-save file will be written until the buffer changes again. arguments: () Fclear-buffer-auto-save-failure Clear any record of a recent auto-save failure in the current buffer. arguments: () Frecent-auto-save-p Return t if buffer has been auto-saved since last read in or saved. arguments: () Vauto-save-file-format *Format in which to write auto-save files. Should be a list of symbols naming formats that are defined in `format-alist'. If it is t, which is the default, auto-save files are written in the same format as a regular save would use.Vvms-stmlf-recfm *Non-nil means write new files with record format `stmlf'. nil means use format `var'. This variable is meaningful only on VMS.Vfile-name-handler-alist *Alist of elements (REGEXP . HANDLER) for file names handled specially. If a file name matches REGEXP, then all I/O on that file is done by calling HANDLER. The first argument given to HANDLER is the name of the I/O primitive to be handled; the remaining arguments are the arguments that were passed to that primitive. For example, if you do (file-exists-p FILENAME) and FILENAME is handled by HANDLER, then HANDLER is called like this: (funcall HANDLER 'file-exists-p FILENAME) The function `find-file-name-handler' checks this list for a handler for its argument.Vafter-insert-file-functions A list of functions to be called at the end of `insert-file-contents'. Each is passed one argument, the number of bytes inserted. It should return the new byte count, and leave point the same. If `insert-file-contents' is intercepted by a handler from `file-name-handler-alist', that handler is responsible for calling the after-insert-file-functions if appropriate.Vwrite-region-annotate-functions A list of functions to be called at the start of `write-region'. Each is passed two arguments, START and END, as for `write-region'. It should return a list of pairs (POSITION . STRING) of strings to be effectively inserted at the specified positions of the file being written (1 means to insert before the first byte written). The POSITIONs must be sorted into increasing order. If there are several functions in the list, the several lists are merged destructively.Vwrite-region-annotations-so-far When an annotation function is called, this holds the previous annotations. These are the annotations made by other annotation functions that were already called. See also `write-region-annotate-functions'.Vinhibit-file-name-handlers A list of file name handlers that temporarily should not be used. This applies only to the operation `inhibit-file-name-operation'.Vinhibit-file-name-operation The operation for which `inhibit-file-name-handlers' is applicable.Vauto-save-list-file-name File name in which we write a list of all auto save file names.Vdisable-auto-save-when-buffer-shrinks If non-nil, auto-saving is disabled when a buffer shrinks too much. This is to prevent you from losing your edits if you accidentally delete a large chunk of the buffer and don't notice it until too late. Saving the buffer normally turns auto-save back on.Facos Return the inverse cosine of ARG. arguments: (ARG) Fasin Return the inverse sine of ARG. arguments: (ARG) Fatan Return the inverse tangent of ARG. arguments: (ARG1 &optional ARG2) Fcos Return the cosine of ARG. arguments: (ARG) Fsin Return the sine of ARG. arguments: (ARG) Ftan Return the tangent of ARG. arguments: (ARG) Fbessel-j0 Return the bessel function j0 of ARG. arguments: (ARG) Fbessel-j1 Return the bessel function j1 of ARG. arguments: (ARG) Fbessel-jn Return the order N bessel function output jn of ARG. The first arg (the order) is truncated to an integer. arguments: (ARG1 ARG2) Fbessel-y0 Return the bessel function y0 of ARG. arguments: (ARG) Fbessel-y1 Return the bessel function y1 of ARG. arguments: (ARG) Fbessel-yn Return the order N bessel function output yn of ARG. The first arg (the order) is truncated to an integer. arguments: (ARG1 ARG2) Ferf Return the mathematical error function of ARG. arguments: (ARG) Ferfc Return the complementary error function of ARG. arguments: (ARG) Flog-gamma Return the log gamma of ARG. arguments: (ARG) Fexp Return the exponential base e of ARG. arguments: (ARG) Fexpt Return the exponential ARG1 ** ARG2. arguments: (ARG1 ARG2) Flog Return the natural logarithm of ARG. If second optional argument BASE is given, return log ARG using that base. arguments: (ARG &optional BASE) Flog10 Return the logarithm base 10 of ARG. arguments: (ARG) Fsqrt Return the square root of ARG. arguments: (ARG) Fcube-root Return the cube root of ARG. arguments: (ARG) Facosh Return the inverse hyperbolic cosine of ARG. arguments: (ARG) Fasinh Return the inverse hyperbolic sine of ARG. arguments: (ARG) Fatanh Return the inverse hyperbolic tangent of ARG. arguments: (ARG) Fcosh Return the hyperbolic cosine of ARG. arguments: (ARG) Fsinh Return the hyperbolic sine of ARG. arguments: (ARG) Ftanh Return the hyperbolic tangent of ARG. arguments: (ARG) Fabs Return the absolute value of ARG. arguments: (ARG) Ffloat Return the floating point number equal to ARG. arguments: (ARG) Flogb Return largest integer <= the base 2 log of the magnitude of ARG. This is the same as the exponent of a float. arguments: (ARG) Fceiling Return the smallest integer no less than ARG. (Round toward +inf.) arguments: (ARG) Ffloor Return the largest integer no greater than ARG. (Round towards -inf.) With optional DIVISOR, return the largest integer no greater than ARG/DIVISOR. arguments: (ARG &optional DIVISOR) Fround Return the nearest integer to ARG. arguments: (ARG) Ftruncate Truncate a floating point number to an integer. Rounds the value toward zero. arguments: (ARG) Ffceiling Return the smallest integer no less than ARG, as a float. (Round toward +inf.) arguments: (ARG) Fffloor Return the largest integer no greater than ARG, as a float. (Round towards -inf.) arguments: (ARG) Ffround Return the nearest integer to ARG, as a float. arguments: (ARG) Fftruncate Truncate a floating point number to an integral float value. Rounds the value toward zero. arguments: (ARG) Fidentity Return the argument unchanged. arguments: (ARG) Frandom Return a pseudo-random number. All integers representable in Lisp are equally likely. On most systems, this is 28 bits' worth. With positive integer argument N, return random number in interval [0,N). With argument t, set the random number seed from the current time and pid. arguments: (&optional LIMIT) Flength Return the length of vector, bit vector, list or string SEQUENCE. arguments: (OBJ) Fsafe-length Return the length of a list, but avoid error or infinite loop. This function never gets an error. If LIST is not really a list, it returns 0. If LIST is circular, it returns a finite value which is at least the number of distinct elements. arguments: (LIST) Fstring-equal T if two strings have identical contents. Case is significant. Text properties are ignored. (Under XEmacs, `equal' also ignores text properties and extents in strings, but this is not the case under FSF Emacs.) Symbols are also allowed; their print names are used instead. arguments: (S1 S2) Fstring-lessp T if first arg string is less than second in lexicographic order. If I18N2 support (but not Mule support) was compiled in, ordering is determined by the locale. (Case is significant for the default C locale.) In all other cases, comparison is simply done on a character-by- character basis using the numeric value of a character. (Note that this may not produce particularly meaningful results under Mule if characters from different charsets are being compared.) Symbols are also allowed; their print names are used instead. The reason that the I18N2 locale-specific collation is not used under Mule is that the locale model of internationalization does not handle multiple charsets and thus has no hope of working properly under Mule. What we really should do is create a collation table over all built-in charsets. This is extremely difficult to do from scratch, however. Unicode is a good first step towards solving this problem. In fact, it is quite likely that a collation table exists (or will exist) for Unicode. When Unicode support is added to XEmacs/Mule, this problem may be solved. arguments: (S1 S2) Fstring-modified-tick Return STRING's tick counter, incremented for each change to the string. Each string has a tick counter which is incremented each time the contents of the string are changed (e.g. with `aset'). It wraps around occasionally. arguments: (STRING) Fappend Concatenate all the arguments and make the result a list. The result is a list whose elements are the elements of all the arguments. Each argument may be a list, vector, bit vector, or string. The last argument is not copied, just used as the tail of the new list. Also see: `nconc'.Fconcat Concatenate all the arguments and make the result a string. The result is a string whose elements are the elements of all the arguments. Each argument may be a string or a list or vector of characters. Do not use individual integers as arguments! The behavior of `concat' in that case will be changed later! If your program passes an integer as an argument to `concat', you should change it right away not to do so.Fvconcat Concatenate all the arguments and make the result a vector. The result is a vector whose elements are the elements of all the arguments. Each argument may be a list, vector, bit vector, or string.Fbvconcat Concatenate all the arguments and make the result a bit vector. The result is a bit vector whose elements are the elements of all the arguments. Each argument may be a list, vector, bit vector, or string.Fcopy-sequence Return a copy of a list, vector, bit vector or string. The elements of a list or vector are not copied; they are shared with the original. arguments: (ARG) Fcopy-alist Return a copy of ALIST. This is an alist which represents the same mapping from objects to objects, but does not share the alist structure with ALIST. The objects mapped (cars and cdrs of elements of the alist) are shared, however. Elements of ALIST that are not conses are also shared. arguments: (ALIST) Fcopy-tree Return a copy of a list and substructures. The argument is copied, and any lists contained within it are copied recursively. Circularities and shared substructures are not preserved. Second arg VECP causes vectors to be copied, too. Strings and bit vectors are not copied. arguments: (ARG &optional VECP) Fsubstring Return a substring of STRING, starting at index FROM and ending before TO. TO may be nil or omitted; then the substring runs to the end of STRING. If FROM or TO is negative, it counts from the end. Relevant parts of the string-extent-data are copied in the new string. arguments: (STRING FROM &optional TO) Fsubseq Return a subsequence of SEQ, starting at index FROM and ending before TO. TO may be nil or omitted; then the subsequence runs to the end of SEQ. If FROM or TO is negative, it counts from the end. The resulting subsequence is always the same type as the original sequence. If SEQ is a string, relevant parts of the string-extent-data are copied in the new string. arguments: (SEQ FROM &optional TO) Fnthcdr Take cdr N times on LIST, returns the result. arguments: (N LIST) Fnth Return the Nth element of LIST. N counts from zero. If LIST is not that long, nil is returned. arguments: (N LIST) Felt Return element of SEQUENCE at index N. arguments: (SEQ N) Fmember Return non-nil if ELT is an element of LIST. Comparison done with `equal'. The value is actually the tail of LIST whose car is ELT. arguments: (ELT LIST) Fold-member Return non-nil if ELT is an element of LIST. Comparison done with `old-equal'. The value is actually the tail of LIST whose car is ELT. This function is provided only for byte-code compatibility with v19. Do not use it. arguments: (ELT LIST) Fmemq Return non-nil if ELT is an element of LIST. Comparison done with `eq'. The value is actually the tail of LIST whose car is ELT. arguments: (ELT LIST) Fold-memq Return non-nil if ELT is an element of LIST. Comparison done with `old-eq'. The value is actually the tail of LIST whose car is ELT. This function is provided only for byte-code compatibility with v19. Do not use it. arguments: (ELT LIST) Fassoc Return non-nil if KEY is `equal' to the car of an element of LIST. The value is actually the element of LIST whose car equals KEY. arguments: (KEY LIST) Fold-assoc Return non-nil if KEY is `old-equal' to the car of an element of LIST. The value is actually the element of LIST whose car equals KEY. arguments: (KEY LIST) Fassq Return non-nil if KEY is `eq' to the car of an element of LIST. The value is actually the element of LIST whose car is KEY. Elements of LIST that are not conses are ignored. arguments: (KEY LIST) Fold-assq Return non-nil if KEY is `old-eq' to the car of an element of LIST. The value is actually the element of LIST whose car is KEY. Elements of LIST that are not conses are ignored. This function is provided only for byte-code compatibility with v19. Do not use it. arguments: (KEY LIST) Frassoc Return non-nil if KEY is `equal' to the cdr of an element of LIST. The value is actually the element of LIST whose cdr equals KEY. arguments: (KEY LIST) Fold-rassoc Return non-nil if KEY is `old-equal' to the cdr of an element of LIST. The value is actually the element of LIST whose cdr equals KEY. arguments: (KEY LIST) Frassq Return non-nil if KEY is `eq' to the cdr of an element of LIST. The value is actually the element of LIST whose cdr is KEY. arguments: (KEY LIST) Fold-rassq Return non-nil if KEY is `old-eq' to the cdr of an element of LIST. The value is actually the element of LIST whose cdr is KEY. arguments: (KEY LIST) Fdelete Delete by side effect any occurrences of ELT as a member of LIST. The modified LIST is returned. Comparison is done with `equal'. If the first member of LIST is ELT, there is no way to remove it by side effect; therefore, write `(setq foo (delete element foo))' to be sure of changing the value of `foo'. Also see: `remove'. arguments: (ELT LIST) Fold-delete Delete by side effect any occurrences of ELT as a member of LIST. The modified LIST is returned. Comparison is done with `old-equal'. If the first member of LIST is ELT, there is no way to remove it by side effect; therefore, write `(setq foo (delete element foo))' to be sure of changing the value of `foo'. arguments: (ELT LIST) Fdelq Delete by side effect any occurrences of ELT as a member of LIST. The modified LIST is returned. Comparison is done with `eq'. If the first member of LIST is ELT, there is no way to remove it by side effect; therefore, write `(setq foo (delq element foo))' to be sure of changing the value of `foo'. arguments: (ELT LIST) Fold-delq Delete by side effect any occurrences of ELT as a member of LIST. The modified LIST is returned. Comparison is done with `old-eq'. If the first member of LIST is ELT, there is no way to remove it by side effect; therefore, write `(setq foo (delq element foo))' to be sure of changing the value of `foo'. arguments: (ELT LIST) Fremassoc Delete by side effect any elements of LIST whose car is `equal' to KEY. The modified LIST is returned. If the first member of LIST has a car that is `equal' to KEY, there is no way to remove it by side effect; therefore, write `(setq foo (remassoc key foo))' to be sure of changing the value of `foo'. arguments: (KEY LIST) Fremassq Delete by side effect any elements of LIST whose car is `eq' to KEY. The modified LIST is returned. If the first member of LIST has a car that is `eq' to KEY, there is no way to remove it by side effect; therefore, write `(setq foo (remassq key foo))' to be sure of changing the value of `foo'. arguments: (KEY LIST) Fremrassoc Delete by side effect any elements of LIST whose cdr is `equal' to VALUE. The modified LIST is returned. If the first member of LIST has a car that is `equal' to VALUE, there is no way to remove it by side effect; therefore, write `(setq foo (remrassoc value foo))' to be sure of changing the value of `foo'. arguments: (VALUE LIST) Fremrassq Delete by side effect any elements of LIST whose cdr is `eq' to VALUE. The modified LIST is returned. If the first member of LIST has a car that is `eq' to VALUE, there is no way to remove it by side effect; therefore, write `(setq foo (remrassq value foo))' to be sure of changing the value of `foo'. arguments: (VALUE LIST) Fnreverse Reverse LIST by modifying cdr pointers. Returns the beginning of the reversed list. Also see: `reverse'. arguments: (LIST) Freverse Reverse LIST, copying. Returns the beginning of the reversed list. See also the function `nreverse', which is used more often. arguments: (LIST) Fsort Sort LIST, stably, comparing elements using PREDICATE. Returns the sorted list. LIST is modified by side effects. PREDICATE is called with two elements of LIST, and should return T if the first element is "less" than the second. arguments: (LIST PRED) Fplists-eq Return non-nil if property lists A and B are `eq'. A property list is an alternating list of keywords and values. This function does order-insensitive comparisons of the property lists: For example, the property lists '(a 1 b 2) and '(b 2 a 1) are equal. Comparison between values is done using `eq'. See also `plists-equal'. If optional arg NIL-MEANS-NOT-PRESENT is non-nil, then a property with a nil value is ignored. This feature is a virus that has infected old Lisp implementations, but should not be used except for backward compatibility. arguments: (A B &optional NIL-MEANS-NOT-PRESENT) Fplists-equal Return non-nil if property lists A and B are `equal'. A property list is an alternating list of keywords and values. This function does order-insensitive comparisons of the property lists: For example, the property lists '(a 1 b 2) and '(b 2 a 1) are equal. Comparison between values is done using `equal'. See also `plists-eq'. If optional arg NIL-MEANS-NOT-PRESENT is non-nil, then a property with a nil value is ignored. This feature is a virus that has infected old Lisp implementations, but should not be used except for backward compatibility. arguments: (A B &optional NIL-MEANS-NOT-PRESENT) Flax-plists-eq Return non-nil if lax property lists A and B are `eq'. A property list is an alternating list of keywords and values. This function does order-insensitive comparisons of the property lists: For example, the property lists '(a 1 b 2) and '(b 2 a 1) are equal. Comparison between values is done using `eq'. See also `plists-equal'. A lax property list is like a regular one except that comparisons between keywords is done using `equal' instead of `eq'. If optional arg NIL-MEANS-NOT-PRESENT is non-nil, then a property with a nil value is ignored. This feature is a virus that has infected old Lisp implementations, but should not be used except for backward compatibility. arguments: (A B &optional NIL-MEANS-NOT-PRESENT) Flax-plists-equal Return non-nil if lax property lists A and B are `equal'. A property list is an alternating list of keywords and values. This function does order-insensitive comparisons of the property lists: For example, the property lists '(a 1 b 2) and '(b 2 a 1) are equal. Comparison between values is done using `equal'. See also `plists-eq'. A lax property list is like a regular one except that comparisons between keywords is done using `equal' instead of `eq'. If optional arg NIL-MEANS-NOT-PRESENT is non-nil, then a property with a nil value is ignored. This feature is a virus that has infected old Lisp implementations, but should not be used except for backward compatibility. arguments: (A B &optional NIL-MEANS-NOT-PRESENT) Fplist-get Extract a value from a property list. PLIST is a property list, which is a list of the form (PROP1 VALUE1 PROP2 VALUE2...). This function returns the value corresponding to the given PROP, or DEFAULT if PROP is not one of the properties on the list. arguments: (PLIST PROP &optional DEFAULT) Fplist-put Change value in PLIST of PROP to VAL. PLIST is a property list, which is a list of the form (PROP1 VALUE1 PROP2 VALUE2 ...). PROP is usually a symbol and VAL is any object. If PROP is already a property on the list, its value is set to VAL, otherwise the new PROP VAL pair is added. The new plist is returned; use `(setq x (plist-put x prop val))' to be sure to use the new value. The PLIST is modified by side effects. arguments: (PLIST PROP VAL) Fplist-remprop Remove from PLIST the property PROP and its value. PLIST is a property list, which is a list of the form (PROP1 VALUE1 PROP2 VALUE2 ...). PROP is usually a symbol. The new plist is returned; use `(setq x (plist-remprop x prop val))' to be sure to use the new value. The PLIST is modified by side effects. arguments: (PLIST PROP) Fplist-member Return t if PROP has a value specified in PLIST. arguments: (PLIST PROP) Fcheck-valid-plist Given a plist, signal an error if there is anything wrong with it. This means that it's a malformed or circular plist. arguments: (PLIST) Fvalid-plist-p Given a plist, return non-nil if its format is correct. If it returns nil, `check-valid-plist' will signal an error when given the plist; that means it's a malformed or circular plist or has non-symbols as keywords. arguments: (PLIST) Fcanonicalize-plist Destructively remove any duplicate entries from a plist. In such cases, the first entry applies. If optional arg NIL-MEANS-NOT-PRESENT is non-nil, then a property with a nil value is removed. This feature is a virus that has infected old Lisp implementations, but should not be used except for backward compatibility. The new plist is returned. If NIL-MEANS-NOT-PRESENT is given, the return value may not be EQ to the passed-in value, so make sure to `setq' the value back into where it came from. arguments: (PLIST &optional NIL-MEANS-NOT-PRESENT) Flax-plist-get Extract a value from a lax property list. LAX-PLIST is a lax property list, which is a list of the form (PROP1 VALUE1 PROP2 VALUE2...), where comparions between properties is done using `equal' instead of `eq'. This function returns the value corresponding to the given PROP, or DEFAULT if PROP is not one of the properties on the list. arguments: (LAX-PLIST PROP &optional DEFAULT) Flax-plist-put Change value in LAX-PLIST of PROP to VAL. LAX-PLIST is a lax property list, which is a list of the form (PROP1 VALUE1 PROP2 VALUE2...), where comparions between properties is done using `equal' instead of `eq'. PROP is usually a symbol and VAL is any object. If PROP is already a property on the list, its value is set to VAL, otherwise the new PROP VAL pair is added. The new plist is returned; use `(setq x (lax-plist-put x prop val))' to be sure to use the new value. The LAX-PLIST is modified by side effects. arguments: (LAX-PLIST PROP VAL) Flax-plist-remprop Remove from LAX-PLIST the property PROP and its value. LAX-PLIST is a lax property list, which is a list of the form (PROP1 VALUE1 PROP2 VALUE2...), where comparions between properties is done using `equal' instead of `eq'. PROP is usually a symbol. The new plist is returned; use `(setq x (lax-plist-remprop x prop val))' to be sure to use the new value. The LAX-PLIST is modified by side effects. arguments: (LAX-PLIST PROP) Flax-plist-member Return t if PROP has a value specified in LAX-PLIST. LAX-PLIST is a lax property list, which is a list of the form (PROP1 VALUE1 PROP2 VALUE2...), where comparions between properties is done using `equal' instead of `eq'. arguments: (LAX-PLIST PROP) Fcanonicalize-lax-plist Destructively remove any duplicate entries from a lax plist. In such cases, the first entry applies. If optional arg NIL-MEANS-NOT-PRESENT is non-nil, then a property with a nil value is removed. This feature is a virus that has infected old Lisp implementations, but should not be used except for backward compatibility. The new plist is returned. If NIL-MEANS-NOT-PRESENT is given, the return value may not be EQ to the passed-in value, so make sure to `setq' the value back into where it came from. arguments: (LAX-PLIST &optional NIL-MEANS-NOT-PRESENT) Fdestructive-alist-to-plist Convert association list ALIST into the equivalent property-list form. The plist is returned. This converts from ((a . 1) (b . 2) (c . 3)) into (a 1 b 2 c 3) The original alist is destroyed in the process of constructing the plist. See also `alist-to-plist'. arguments: (ALIST) Fget Return the value of OBJECT's PROPNAME property. This is the last VALUE stored with `(put OBJECT PROPNAME VALUE)'. If there is no such property, return optional third arg DEFAULT (which defaults to `nil'). OBJECT can be a symbol, face, extent, or string. See also `put', `remprop', and `object-plist'. arguments: (OBJECT PROPNAME &optional DEFAULT) Fput Store OBJECT's PROPNAME property with value VALUE. It can be retrieved with `(get OBJECT PROPNAME)'. OBJECT can be a symbol, face, extent, or string. For a string, no properties currently have predefined meanings. For the predefined properties for extents, see `set-extent-property'. For the predefined properties for faces, see `set-face-property'. See also `get', `remprop', and `object-plist'. arguments: (OBJECT PROPNAME VALUE) Fremprop Remove from OBJECT's property list the property PROPNAME and its value. OBJECT can be a symbol, face, extent, or string. Returns non-nil if the property list was actually changed (i.e. if PROPNAME was present in the property list). See also `get', `put', and `object-plist'. arguments: (OBJECT PROPNAME) Fobject-plist Return a property list of OBJECT's props. For a symbol this is equivalent to `symbol-plist'. Do not modify the property list directly; this may or may not have the desired effects. (In particular, for a property with a special interpretation, this will probably have no effect at all.) arguments: (OBJECT) Fequal T if two Lisp objects have similar structure and contents. They must have the same data type. Conses are compared by comparing the cars and the cdrs. Vectors and strings are compared element by element. Numbers are compared by value. Symbols must match exactly. arguments: (O1 O2) Fold-equal T if two Lisp objects have similar structure and contents. They must have the same data type. (Note, however, that an exception is made for characters and integers; this is known as the "char-int confoundance disease." See `eq' and `old-eq'.) This function is provided only for byte-code compatibility with v19. Do not use it. arguments: (O1 O2) Ffillarray Store each element of ARRAY with ITEM. ARRAY is a vector, bit vector, or string. arguments: (ARRAY ITEM) Fnconc Concatenate any number of lists by altering them. Only the last argument is not altered, and need not be a list. Also see: `append'.Fmapconcat Apply FN to each element of SEQ, and concat the results as strings. In between each pair of results, stick in SEP. Thus, " " as SEP results in spaces between the values returned by FN. arguments: (FN SEQ SEP) Fmapcar Apply FUNCTION to each element of SEQUENCE, and make a list of the results. The result is a list just as long as SEQUENCE. SEQUENCE may be a list, a vector, a bit vector, or a string. arguments: (FN SEQ) Fmapvector Apply FUNCTION to each element of SEQUENCE, making a vector of the results. The result is a vector of the same length as SEQUENCE. SEQUENCE may be a list, a vector or a string. arguments: (FN SEQ) Fmapc Apply FUNCTION to each element of SEQUENCE. SEQUENCE may be a list, a vector, a bit vector, or a string. This function is like `mapcar' but does not accumulate the results, which is more efficient if you do not use the results. arguments: (FN SEQ) Fload-average Return list of 1 minute, 5 minute and 15 minute load averages. Each of the three load averages is multiplied by 100, then converted to integer. If the 5-minute or 15-minute load averages are not available, return a shortened list, containing only those averages which are available. On some systems, this won't work due to permissions on /dev/kmem in which case you can't use this. arguments: () Ffeaturep Return non-nil if feature FEXP is present in this Emacs. Use this to conditionalize execution of lisp code based on the presence or absence of emacs or environment extensions. FEXP can be a symbol, a number, or a list. If it is a symbol, that symbol is looked up in the `features' variable, and non-nil will be returned if found. If it is a number, the function will return non-nil if this Emacs has an equal or greater version number than FEXP. If it is a list whose car is the symbol `and', it will return non-nil if all the features in its cdr are non-nil. If it is a list whose car is the symbol `or', it will return non-nil if any of the features in its cdr are non-nil. If it is a list whose car is the symbol `not', it will return non-nil if the feature is not present. Examples: (featurep 'xemacs) => ; Non-nil on XEmacs. (featurep '(and xemacs gnus)) => ; Non-nil on XEmacs with Gnus loaded. (featurep '(or tty-frames (and emacs 19.30))) => ; Non-nil if this Emacs supports TTY frames. (featurep '(or (and xemacs 19.15) (and emacs 19.34))) => ; Non-nil on XEmacs 19.15 and later, or FSF Emacs 19.34 and later. NOTE: The advanced arguments of this function (anything other than a symbol) are not yet supported by FSF Emacs. If you feel they are useful for supporting multiple Emacs variants, lobby Richard Stallman at <bug-gnu-emacs@prep.ai.mit.edu>. arguments: (FEXP) Fprovide Announce that FEATURE is a feature of the current Emacs. This function updates the value of the variable `features'. arguments: (FEATURE) Frequire If feature FEATURE is not loaded, load it from FILENAME. If FEATURE is not a member of the list `features', then the feature is not loaded; so load the file FILENAME. If FILENAME is omitted, the printname of FEATURE is used as the file name. arguments: (FEATURE &optional FILE-NAME) Vfeatures A list of symbols which are the features of the executing emacs. Used by `featurep' and `require', and altered by `provide'.Fbuffer-syntactic-context Return the syntactic context of BUFFER at point. If BUFFER is nil or omitted, the current buffer is assumed. The returned value is one of the following symbols: nil ; meaning no special interpretation string ; meaning point is within a string comment ; meaning point is within a line comment block-comment ; meaning point is within a block comment See also the function `buffer-syntactic-context-depth', which returns the current nesting-depth within all parenthesis-syntax delimiters and the function `syntactically-sectionize', which will map a function over each syntactic context in a region. WARNING: this may alter match-data. arguments: (&optional BUFFER) Fbuffer-syntactic-context-depth Return the depth within all parenthesis-syntax delimiters at point. If BUFFER is nil or omitted, the current buffer is assumed. WARNING: this may alter match-data. arguments: (&optional BUFFER) Fsyntactically-sectionize Calls FUNCTION for each contiguous syntactic context in the region. Calls the given function with four arguments: the start and end of the region, a symbol representing the syntactic context, and the current depth (as returned by the functions `buffer-syntactic-context' and `buffer-syntactic-context-depth'). When this function is called, the current buffer will be set to BUFFER. WARNING: this may alter match-data. arguments: (FUNCTION START END &optional BUFFER) Fmake-frame Create a new frame, displaying the current buffer. Runs the functions listed in `create-frame-hook' after frame creation. Optional argument PROPS is a property list (a list of alternating keyword-value specifications) of properties for the new frame. (An alist is accepted for backward compatibility but should not be passed in.) See `set-frame-properties', `default-x-frame-plist', and `default-tty-frame-plist' for the specially-recognized properties. arguments: (&optional PROPS DEVICE) Fframep Return non-nil if OBJECT is a frame. Also see `frame-live-p'. Note that FSF Emacs kludgily returns a value indicating what type of frame this is. Use the cleaner function `frame-type' for that. arguments: (OBJECT) Fframe-live-p Return non-nil if OBJECT is a frame which has not been deleted. arguments: (OBJECT) Fselect-frame Select the frame FRAME. Subsequent editing commands apply to its selected window. The selection of FRAME lasts until the next time the user does something to select a different frame, or until the next time this function is called. Note that this does not actually cause the window-system focus to be set to this frame, or the select-frame-hook or deselect-frame-hook to be run, until the next time that XEmacs is waiting for an event. arguments: (FRAME) Fselected-frame Return the frame that is now selected on device DEVICE. If DEVICE is not specified, the selected device will be used. If no frames exist on the device, nil is returned. arguments: (&optional DEVICE) Factive-minibuffer-window Return the currently active minibuffer window, or nil if none. arguments: () Flast-nonminibuf-frame Return the most-recently-selected non-minibuffer-only frame on CONSOLE. This will always be the same as (selected-frame device) unless the selected frame is a minibuffer-only frame. CONSOLE defaults to the selected console if omitted. arguments: (&optional CONSOLE) Fframe-root-window Return the root-window of FRAME. If omitted, FRAME defaults to the currently selected frame. arguments: (&optional FRAME) Fframe-selected-window Return the selected window of frame object FRAME. If omitted, FRAME defaults to the currently selected frame. arguments: (&optional FRAME) Fset-frame-selected-window Set the selected window of frame object FRAME to WINDOW. If FRAME is nil, the selected frame is used. If FRAME is the selected frame, this makes WINDOW the selected window. arguments: (FRAME WINDOW) Fframe-device Return the device that FRAME is on. If omitted, FRAME defaults to the currently selected frame. arguments: (&optional FRAME) Fnext-frame Return the next frame of the right type in the frame list after FRAME. FRAMETYPE controls which frames are eligible to be returned; all others will be skipped. Note that if there is only one eligible frame, then `next-frame' called repeatedly will always return the same frame, and if there is no eligible frame, then FRAME is returned. Possible values for FRAMETYPE are 'visible Consider only frames that are visible. 'iconic Consider only frames that are iconic. 'invisible Consider only frames that are invisible (this is different from iconic). 'visible-iconic Consider frames that are visible or iconic. 'invisible-iconic Consider frames that are invisible or iconic. 'nomini Consider all frames except minibuffer-only ones. 'visible-nomini Like `visible' but omits minibuffer-only frames. 'iconic-nomini Like `iconic' but omits minibuffer-only frames. 'invisible-nomini Like `invisible' but omits minibuffer-only frames. 'visible-iconic-nomini Like `visible-iconic' but omits minibuffer-only frames. 'invisible-iconic-nomini Like `invisible-iconic' but omits minibuffer-only frames. any other value Consider all frames. If FRAMETYPE is omitted, 'nomini is used. A FRAMETYPE of 0 (a number) is treated like 'iconic, for backwards compatibility. If FRAMETYPE is a window, include only its own frame and any frame now using that window as the minibuffer. Optional third argument CONSOLE controls which consoles or devices the returned frame may be on. If CONSOLE is a console, return frames only on that console. If CONSOLE is a device, return frames only on that device. If CONSOLE is a console type, return frames only on consoles of that type. If CONSOLE is 'window-system, return any frames on any window-system consoles. If CONSOLE is nil or omitted, return frames only on the FRAME's console. Otherwise, all frames are considered. arguments: (&optional FRAME FRAMETYPE CONSOLE) Fprevious-frame Return the next frame of the right type in the frame list after FRAME. FRAMETYPE controls which frames are eligible to be returned; all others will be skipped. Note that if there is only one eligible frame, then `previous-frame' called repeatedly will always return the same frame, and if there is no eligible frame, then FRAME is returned. See `next-frame' for an explanation of the FRAMETYPE and CONSOLE arguments. arguments: (&optional FRAME FRAMETYPE CONSOLE) Fdelete-frame Delete FRAME, permanently eliminating it from use. If omitted, FRAME defaults to the selected frame. A frame may not be deleted if its minibuffer is used by other frames. Normally, you cannot delete the last non-minibuffer-only frame (you must use `save-buffers-kill-emacs' or `kill-emacs'). However, if optional second argument FORCE is non-nil, you can delete the last frame. (This will automatically call `save-buffers-kill-emacs'.) arguments: (&optional FRAME FORCE) Fmouse-position Return a list (WINDOW X . Y) giving the current mouse window and position. The position is given in character cells, where (0, 0) is the upper-left corner of the window. DEVICE specifies the device on which to read the mouse position, and defaults to the selected device. If the device is a mouseless terminal or Emacs hasn't been programmed to read its mouse position, it returns the device's selected window for WINDOW and nil for X and Y. arguments: (&optional DEVICE) Fmouse-pixel-position Return a list (WINDOW X . Y) giving the current mouse window and position. The position is given in pixel units, where (0, 0) is the upper-left corner. DEVICE specifies the device on which to read the mouse position, and defaults to the selected device. If the device is a mouseless terminal or Emacs hasn't been programmed to read its mouse position, it returns the device's selected window for WINDOW and nil for X and Y. arguments: (&optional DEVICE) Fmouse-position-as-motion-event Return the current mouse position as a motion event. This allows you to call the standard event functions such as `event-over-toolbar-p' to determine where the mouse is. DEVICE specifies the device on which to read the mouse position, and defaults to the selected device. If the mouse position can't be determined (e.g. DEVICE is a TTY device), nil is returned instead of an event. arguments: (&optional DEVICE) Fset-mouse-position Move the mouse pointer to the center of character cell (X,Y) in WINDOW. Note, this is a no-op for an X frame that is not visible. If you have just created a frame, you must wait for it to become visible before calling this function on it, like this. (while (not (frame-visible-p frame)) (sleep-for .5)) Note also: Warping the mouse is contrary to the ICCCM, so be very sure that the behavior won't end up being obnoxious! arguments: (WINDOW X Y) Fset-mouse-pixel-position Move the mouse pointer to pixel position (X,Y) in WINDOW. Note, this is a no-op for an X frame that is not visible. If you have just created a frame, you must wait for it to become visible before calling this function on it, like this. (while (not (frame-visible-p frame)) (sleep-for .5)) arguments: (WINDOW X Y) Fmake-frame-visible Make the frame FRAME visible (assuming it is an X-window). If omitted, FRAME defaults to the currently selected frame. Also raises the frame so that nothing obscures it. arguments: (&optional FRAME) Fmake-frame-invisible Unconditionally removes frame from the display (assuming it is an X-window). If omitted, FRAME defaults to the currently selected frame. If what you want to do is iconify the frame (if the window manager uses icons) then you should call `iconify-frame' instead. Normally you may not make FRAME invisible if all other frames are invisible and uniconified, but if the second optional argument FORCE is non-nil, you may do so. arguments: (&optional FRAME FORCE) Ficonify-frame Make the frame FRAME into an icon, if the window manager supports icons. If omitted, FRAME defaults to the currently selected frame. arguments: (&optional FRAME) Fdeiconify-frame Open (de-iconify) the iconified frame FRAME. Under X, this is currently the same as `make-frame-visible'. If omitted, FRAME defaults to the currently selected frame. Also raises the frame so that nothing obscures it. arguments: (&optional FRAME) Fframe-visible-p Return non NIL if FRAME is now "visible" (actually in use for display). A frame that is not visible is not updated, and, if it works through a window system, may not show at all. N.B. Under X "visible" means Mapped. It the window is mapped but not actually visible on screen then frame_visible returns 'hidden. arguments: (&optional FRAME) Fframe-totally-visible-p Return T if frame is not obscured by any other X windows, NIL otherwise. Always returns t for tty frames. arguments: (&optional FRAME) Fframe-iconified-p Return t if FRAME is iconified. Not all window managers use icons; some merely unmap the window, so this function is not the inverse of `frame-visible-p'. It is possible for a frame to not be visible and not be iconified either. However, if the frame is iconified, it will not be visible. arguments: (&optional FRAME) Fvisible-frame-list Return a list of all frames now "visible" (being updated). If DEVICE is specified only frames on that device will be returned. Note that under virtual window managers not all these frame are necessarily really updated. arguments: (&optional DEVICE) Fraise-frame Bring FRAME to the front, so it occludes any frames it overlaps. If omitted, FRAME defaults to the currently selected frame. If FRAME is invisible, make it visible. If Emacs is displaying on an ordinary terminal or some other device which doesn't support multiple overlapping frames, this function does nothing. arguments: (&optional FRAME) Flower-frame Send FRAME to the back, so it is occluded by any frames that overlap it. If omitted, FRAME defaults to the currently selected frame. If Emacs is displaying on an ordinary terminal or some other device which doesn't support multiple overlapping frames, this function does nothing. arguments: (&optional FRAME) Fset-frame-properties Change some properties of a frame. PLIST is a property list. You can also change frame properties individually using `set-frame-property', but it may be more efficient to change many properties at once. Frame properties can be retrieved using `frame-property' or `frame-properties'. The following symbols etc. have predefined meanings: name Name of the frame, used with X resources. Unchangeable after creation. height Height of the frame, in lines. width Width of the frame, in characters. minibuffer Gives the minibuffer behavior for this frame. Either t (frame has its own minibuffer), `only' (frame is a minibuffer-only frame), or a window (frame uses that window, which is on another frame, as the minibuffer). unsplittable If non-nil, frame cannot be split by `display-buffer'. current-display-table, menubar-visible-p, left-margin-width, right-margin-width, minimum-line-ascent, minimum-line-descent, use-left-overflow, use-right-overflow, scrollbar-width, scrollbar-height, default-toolbar, top-toolbar, bottom-toolbar, left-toolbar, right-toolbar, default-toolbar-height, default-toolbar-width, top-toolbar-height, bottom-toolbar-height, left-toolbar-width, right-toolbar-width, default-toolbar-visible-p, top-toolbar-visible-p, bottom-toolbar-visible-p, left-toolbar-visible-p, right-toolbar-visible-p, toolbar-buttons-captioned-p, modeline-shadow-thickness, has-modeline-p [Giving the name of any built-in specifier variable is equivalent to calling `set-specifier' on the specifier, with a locale of FRAME. Giving the name to `frame-property' calls `specifier-instance' on the specifier.] text-pointer-glyph, nontext-pointer-glyph, modeline-pointer-glyph, selection-pointer-glyph, busy-pointer-glyph, toolbar-pointer-glyph, menubar-pointer-glyph, scrollbar-pointer-glyph, gc-pointer-glyph, octal-escape-glyph, control-arrow-glyph, invisible-text-glyph, hscroll-glyph, truncation-glyph, continuation-glyph [Giving the name of any glyph variable is equivalent to calling `set-glyph-image' on the glyph, with a locale of FRAME. Giving the name to `frame-property' calls `glyph-image-instance' on the glyph.] [default foreground], [default background], [default font], [modeline foreground], [modeline background], [modeline font], etc. [Giving a vector of a face and a property is equivalent to calling `set-face-property' on the face and property, with a locale of FRAME. Giving the vector to `frame-property' calls `face-property-instance' on the face and property.] Finally, if a frame property symbol has the property `frame-property-alias' on it, then the value will be used in place of that symbol when looking up and setting frame property values. This allows you to alias one frame property name to another. See the variables `default-x-frame-plist' and `default-tty-frame-plist' for a description of the properties recognized for particular types of frames. arguments: (FRAME PLIST) Fframe-property Return FRAME's value for property PROPERTY. See `set-frame-properties' for the built-in property names. arguments: (FRAME PROPERTY &optional DEFAULT) Fframe-properties Return a property list of the properties of FRAME. Do not modify this list; use `set-frame-property' instead. arguments: (&optional FRAME) Fframe-pixel-height Return the height in pixels of FRAME. arguments: (&optional FRAME) Fframe-pixel-width Return the width in pixels of FRAME. arguments: (&optional FRAME) Fframe-name Return the name of FRAME (defaulting to the selected frame). This is not the same as the `title' of the frame. arguments: (&optional FRAME) Fframe-modified-tick Return FRAME's tick counter, incremented for each change to the frame. Each frame has a tick counter which is incremented each time the frame is resized, a window is resized, added, or deleted, a face is changed, `set-window-buffer' or `select-window' is called on a window in the frame, the window-start of a window in the frame has changed, or anything else interesting has happened. It wraps around occasionally. No argument or nil as argument means use selected frame as FRAME. arguments: (&optional FRAME) Fset-frame-height Specify that the frame FRAME has LINES lines. Optional third arg non-nil means that redisplay should use LINES lines but that the idea of the actual height of the frame should not be changed. arguments: (FRAME ROWS &optional PRETEND) Fset-frame-width Specify that the frame FRAME has COLS columns. Optional third arg non-nil means that redisplay should use COLS columns but that the idea of the actual width of the frame should not be changed. arguments: (FRAME COLS &optional PRETEND) Fset-frame-size Sets size of FRAME to COLS by ROWS. Optional fourth arg non-nil means that redisplay should use COLS by ROWS but that the idea of the actual size of the frame should not be changed. arguments: (FRAME COLS ROWS &optional PRETEND) Fset-frame-position Sets position of FRAME in pixels to XOFFSET by YOFFSET. This is actually the position of the upper left corner of the frame. Negative values for XOFFSET or YOFFSET are interpreted relative to the rightmost or bottommost possible position (that stays within the screen). arguments: (FRAME XOFFSET YOFFSET) Fset-frame-pointer Set the mouse pointer of FRAME to the given pointer image instance. You should not call this function directly. Instead, set one of the variables `text-pointer-glyph', `nontext-pointer-glyph', `modeline-pointer-glyph', `selection-pointer-glyph', `busy-pointer-glyph', or `toolbar-pointer-glyph'. arguments: (FRAME IMAGE-INSTANCE) Vselect-frame-hook Function or functions to run just after a new frame is given the focus. Note that calling `select-frame' does not necessarily set the focus: The actual window-system focus will not be changed until the next time that XEmacs is waiting for an event, and even then, the window manager may refuse the focus-change request.Vdeselect-frame-hook Function or functions to run just before a frame loses the focus. See `select-frame-hook'.Vdelete-frame-hook Function or functions to call when a frame is deleted. One argument, the about-to-be-deleted frame.Vcreate-frame-hook Function or functions to call when a frame is created. One argument, the newly-created frame.Vmouse-enter-frame-hook Function or functions to call when the mouse enters a frame. One argument, the frame. Be careful not to make assumptions about the window manager's focus model. In most cases, the `deselect-frame-hook' is more appropriate.Vmouse-leave-frame-hook Function or functions to call when the mouse leaves a frame. One argument, the frame. Be careful not to make assumptions about the window manager's focus model. In most cases, the `select-frame-hook' is more appropriate.Vmap-frame-hook Function or functions to call when a frame is mapped. One argument, the frame.Vunmap-frame-hook Function or functions to call when a frame is unmapped. One argument, the frame.Vallow-deletion-of-last-visible-frame *Non-nil means to assume the force option to delete-frame.Vdrag-and-drop-functions Function or functions to run when an object is dropped on a frame. Each function is called with either two or three args. If called with two args, the args are a frame and a pathname. If with three, the args are a frame, a pathname (which will be either a string or nil) and the textual representation of the dragged object.Vmouse-motion-handler Handler for motion events. One arg, the event. For most applications, you should use `mode-motion-hook' instead of this.Vsynchronize-minibuffers Set to t if all minibuffer windows are to be synchronized. This will cause echo area messages to appear in the minibuffers of all visible frames.Vframe-title-format Controls the title of the X window corresponding to the selected frame. This is the same format as `modeline-format' with the exception that %- is ignored.Vframe-icon-title-format Controls the title of the icon corresponding to the selected frame. See also the variable `frame-title-format'.Vdefault-frame-name The default name to assign to newly-created frames. This can be overridden by arguments to `make-frame'. This must be a string.Vdefault-frame-plist Plist of default values for frame creation, other than the first one. These may be set in your init file, like this: (setq default-frame-plist '(width 80 height 55)) The properties may be in alist format for backward compatibility but you should not rely on this behavior. These override values given in window system configuration data, including X Windows' defaults database. Since the first X frame is created before loading your .emacs file, you must use the X resource database for that. For values specific to the first Emacs frame, see `initial-frame-plist'. For values specific to the separate minibuffer frame, see `minibuffer-frame-plist'. See also the variables `default-x-frame-plist' and `default-tty-frame-plist', which are like `default-frame-plist' except that they apply only to X or tty frames, respectively (whereas `default-frame-plist' applies to all types of frames).Vframe-icon-glyph Icon glyph used to iconify a frame.Fvalid-image-instantiator-format-p Given an IMAGE-INSTANTIATOR-FORMAT, return non-nil if it is valid. Valid formats are some subset of 'nothing, 'string, 'formatted-string, 'xpm, 'xbm, 'xface, 'gif, 'jpeg, 'png, 'tiff, 'cursor-font, 'font, 'autodetect, and 'subwindow, depending on how XEmacs was compiled. arguments: (IMAGE-INSTANTIATOR-FORMAT) Fimage-instantiator-format-list Return a list of valid image-instantiator formats. arguments: () Fset-console-type-image-conversion-list Set the image-conversion-list for consoles of the given TYPE. The image-conversion-list specifies how image instantiators that are strings should be interpreted. Each element of the list should be a list of two elements (a regular expression string and a vector) or a list of three elements (the preceding two plus an integer index into the vector). The string is converted to the vector associated with the first matching regular expression. If a vector index is specified, the string itself is substituted into that position in the vector. Note: The conversion above is applied when the image instantiator is added to an image specifier, not when the specifier is actually instantiated. Therefore, changing the image-conversion-list only affects newly-added instantiators. Existing instantiators in glyphs and image specifiers will not be affected. arguments: (CONSOLE-TYPE LIST) Fconsole-type-image-conversion-list Return the image-conversion-list for devices of the given TYPE. The image-conversion-list specifies how to interpret image string instantiators for the specified console type. See `set-console-type-image-conversion-list' for a description of its syntax. arguments: (CONSOLE-TYPE) Fvalid-image-instance-type-p Given an IMAGE-INSTANCE-TYPE, return non-nil if it is valid. Valid types are some subset of 'nothing, 'text, 'mono-pixmap, 'color-pixmap, 'pointer, and 'subwindow, depending on how XEmacs was compiled. arguments: (IMAGE-INSTANCE-TYPE) Fimage-instance-type-list Return a list of valid image-instance types. arguments: () Fmake-image-instance Create a new `image-instance' object. Image-instance objects encapsulate the way a particular image (pixmap, etc.) is displayed on a particular device. In most circumstances, you do not need to directly create image instances; use a glyph instead. However, it may occasionally be useful to explicitly create image instances, if you want more control over the instantiation process. DATA is an image instantiator, which describes the image; see `image-specifier-p' for a description of the allowed values. DEST-TYPES should be a list of allowed image instance types that can be generated. The recognized image instance types are 'nothing Nothing is displayed. 'text Displayed as text. The foreground and background colors and the font of the text are specified independent of the pixmap. Typically these attributes will come from the face of the surrounding text, unless a face is specified for the glyph in which the image appears. 'mono-pixmap Displayed as a mono pixmap (a pixmap with only two colors where the foreground and background can be specified independent of the pixmap; typically the pixmap assumes the foreground and background colors of the text around it, unless a face is specified for the glyph in which the image appears). 'color-pixmap Displayed as a color pixmap. 'pointer Used as the mouse pointer for a window. 'subwindow A child window that is treated as an image. This allows (e.g.) another program to be responsible for drawing into the window. Not currently implemented. The DEST-TYPES list is unordered. If multiple destination types are possible for a given instantiator, the "most natural" type for the instantiator's format is chosen. (For XBM, the most natural types are `mono-pixmap', followed by `color-pixmap', followed by `pointer'. For the other normal image formats, the most natural types are `color-pixmap', followed by `mono-pixmap', followed by `pointer'. For the string and formatted-string formats, the most natural types are `text', followed by `mono-pixmap' (not currently implemented), followed by `color-pixmap' (not currently implemented). The other formats can only be instantiated as one type. (If you want to control more specifically the order of the types into which an image is instantiated, just call `make-image-instance' repeatedly until it succeeds, passing less and less preferred destination types each time. If DEST-TYPES is omitted, all possible types are allowed. NO-ERROR controls what happens when the image cannot be generated. If nil, an error message is generated. If t, no messages are generated and this function returns nil. If anything else, a warning message is generated and this function returns nil. arguments: (DATA &optional DEVICE DEST-TYPES NO-ERROR) Fimage-instance-p Return non-nil if OBJECT is an image instance. arguments: (OBJECT) Fimage-instance-type Return the type of the given image instance. The return value will be one of 'nothing, 'text, 'mono-pixmap, 'color-pixmap, 'pointer, or 'subwindow. arguments: (IMAGE-INSTANCE) Fimage-instance-name Return the name of the given image instance. arguments: (IMAGE-INSTANCE) Fimage-instance-string Return the string of the given image instance. This will only be non-nil for text image instances. arguments: (IMAGE-INSTANCE) Fimage-instance-file-name Return the file name from which IMAGE-INSTANCE was read, if known. arguments: (IMAGE-INSTANCE) Fimage-instance-mask-file-name Return the file name from which IMAGE-INSTANCE's mask was read, if known. arguments: (IMAGE-INSTANCE) Fimage-instance-depth Return the depth of the image instance. This is 0 for a bitmap, or a positive integer for a pixmap. arguments: (IMAGE-INSTANCE) Fimage-instance-height Return the height of the image instance, in pixels. arguments: (IMAGE-INSTANCE) Fimage-instance-width Return the width of the image instance, in pixels. arguments: (IMAGE-INSTANCE) Fimage-instance-hotspot-x Return the X coordinate of the image instance's hotspot, if known. This is a point relative to the origin of the pixmap. When an image is used as a mouse pointer, the hotspot is the point on the image that sits over the location that the pointer points to. This is, for example, the tip of the arrow or the center of the crosshairs. This will always be nil for a non-pointer image instance. arguments: (IMAGE-INSTANCE) Fimage-instance-hotspot-y Return the Y coordinate of the image instance's hotspot, if known. This is a point relative to the origin of the pixmap. When an image is used as a mouse pointer, the hotspot is the point on the image that sits over the location that the pointer points to. This is, for example, the tip of the arrow or the center of the crosshairs. This will always be nil for a non-pointer image instance. arguments: (IMAGE-INSTANCE) Fimage-instance-foreground Return the foreground color of IMAGE-INSTANCE, if applicable. This will be a color instance or nil. (It will only be non-nil for colorized mono pixmaps and for pointers.) arguments: (IMAGE-INSTANCE) Fimage-instance-background Return the background color of IMAGE-INSTANCE, if applicable. This will be a color instance or nil. (It will only be non-nil for colorized mono pixmaps and for pointers.) arguments: (IMAGE-INSTANCE) Fcolorize-image-instance Make the image instance be displayed in the given colors. This function returns a new image instance that is exactly like the specified one except that (if possible) the foreground and background colors and as specified. Currently, this only does anything if the image instance is a mono pixmap; otherwise, the same image instance is returned. arguments: (IMAGE-INSTANCE FOREGROUND BACKGROUND) Fimage-specifier-p Return non-nil if OBJECT is an image specifier. An image specifier is used for images (pixmaps and the like). It is used to describe the actual image in a glyph. It is instanced as an image- instance. Image instantiators come in many formats: `xbm', `xpm', `gif', `jpeg', etc. This describes the format of the data describing the image. The resulting image instances also come in many types -- `mono-pixmap', `color-pixmap', `text', `pointer', etc. This refers to the behavior of the image and the sorts of places it can appear. (For example, a color-pixmap image has fixed colors specified for it, while a mono-pixmap image comes in two unspecified shades "foreground" and "background" that are determined from the face of the glyph or surrounding text; a text image appears as a string of text and has an unspecified foreground, background, and font; a pointer image behaves like a mono-pixmap image but can only be used as a mouse pointer [mono-pixmap images cannot be used as mouse pointers]; etc.) It is important to keep the distinction between image instantiator format and image instance type in mind. Typically, a given image instantiator format can result in many different image instance types (for example, `xpm' can be instanced as `color-pixmap', `mono-pixmap', or `pointer'; whereas `cursor-font' can be instanced only as `pointer'), and a particular image instance type can be generated by many different image instantiator formats (e.g. `color-pixmap' can be generated by `xpm', `gif', `jpeg', etc.). See `make-image-instance' for a more detailed discussion of image instance types. An image instantiator should be a string or a vector of the form [FORMAT :KEYWORD VALUE ...] i.e. a format symbol followed by zero or more alternating keyword-value pairs. FORMAT should be one of 'nothing (Don't display anything; no keywords are valid for this. Can only be instanced as `nothing'.) 'string (Display this image as a text string. Can only be instanced as `text', although support for instancing as `mono-pixmap' should be added.) 'formatted-string (Display this image as a text string, with replaceable fields; not currently implemented.) 'xbm (An X bitmap; only if X support was compiled into this XEmacs. Can be instanced as `mono-pixmap', `color-pixmap', or `pointer'.) 'xpm (An XPM pixmap; only if XPM support was compiled into this XEmacs. Can be instanced as `color-pixmap', `mono-pixmap', or `pointer'.) 'xface (An X-Face bitmap, used to encode people's faces in e-mail messages; only if X-Face support was compiled into this XEmacs. Can be instanced as `mono-pixmap', `color-pixmap', or `pointer'.) 'gif (A GIF87 or GIF89 image; only if GIF support was compiled into this XEmacs. Can be instanced as `color-pixmap'.) 'jpeg (A JPEG image; only if JPEG support was compiled into this XEmacs. Can be instanced as `color-pixmap'.) 'png (A PNG/GIF24 image; only if PNG support was compiled into this XEmacs. Can be instanced as `color-pixmap'.) 'tiff (A TIFF image; not currently implemented.) 'cursor-font (One of the standard cursor-font names, such as "watch" or "right_ptr" under X. Under X, this is, more specifically, any of the standard cursor names from appendix B of the Xlib manual [also known as the file <X11/cursorfont.h>] minus the XC_ prefix. On other window systems, the valid names will be specific to the type of window system. Can only be instanced as `pointer'.) 'font (A glyph from a font; i.e. the name of a font, and glyph index into it of the form "FONT fontname index [[mask-font] mask-index]". Currently can only be instanced as `pointer', although this should probably be fixed.) 'subwindow (An embedded X window; not currently implemented.) 'autodetect (XEmacs tries to guess what format the data is in. If X support exists, the data string will be checked to see if it names a filename. If so, and this filename contains XBM or XPM data, the appropriate sort of pixmap or pointer will be created. [This includes picking up any specified hotspot or associated mask file.] Otherwise, if `pointer' is one of the allowable image-instance types and the string names a valid cursor-font name, the image will be created as a pointer. Otherwise, the image will be displayed as text. If no X support exists, the image will always be displayed as text.) 'inherit Inherit from the background-pixmap property of a face. The valid keywords are: :data (Inline data. For most formats above, this should be a string. For XBM images, this should be a list of three elements: width, height, and a string of bit data. This keyword is not valid for instantiator formats `nothing' and `inherit'.) :file (Data is contained in a file. The value is the name of this file. If both :data and :file are specified, the image is created from what is specified in :data and the string in :file becomes the value of the `image-instance-file-name' function when applied to the resulting image-instance. This keyword is not valid for instantiator formats `nothing', `string', `formatted-string', `cursor-font', `font', `autodetect', and `inherit'.) :foreground :background (For `xbm', `xface', `cursor-font', and `font'. These keywords allow you to explicitly specify foreground and background colors. The argument should be anything acceptable to `make-color-instance'. This will cause what would be a `mono-pixmap' to instead be colorized as a two-color color-pixmap, and specifies the foreground and/or background colors for a pointer instead of black and white.) :mask-data (For `xbm' and `xface'. This specifies a mask to be used with the bitmap. The format is a list of width, height, and bits, like for :data.) :mask-file (For `xbm' and `xface'. This specifies a file containing the mask data. If neither a mask file nor inline mask data is given for an XBM image, and the XBM image comes from a file, XEmacs will look for a mask file with the same name as the image file but with "Mask" or "msk" appended. For example, if you specify the XBM file "left_ptr" [usually located in "/usr/include/X11/bitmaps"], the associated mask file "left_ptrmsk" will automatically be picked up.) :hotspot-x :hotspot-y (For `xbm' and `xface'. These keywords specify a hotspot if the image is instantiated as a `pointer'. Note that if the XBM image file specifies a hotspot, it will automatically be picked up if no explicit hotspot is given.) :color-symbols (Only for `xpm'. This specifies an alist that maps strings that specify symbolic color names to the actual color to be used for that symbolic color (in the form of a string or a color-specifier object). If this is not specified, the contents of `xpm-color-symbols' are used to generate the alist.) :face (Only for `inherit'. This specifies the face to inherit from.) If instead of a vector, the instantiator is a string, it will be converted into a vector by looking it up according to the specs in the `console-type-image-conversion-list' (q.v.) for the console type of the domain (usually a window; sometimes a frame or device) over which the image is being instantiated. If the instantiator specifies data from a file, the data will be read in at the time that the instantiator is added to the image (which may be well before when the image is actually displayed), and the instantiator will be converted into one of the inline-data forms, with the filename retained using a :file keyword. This implies that the file must exist when the instantiator is added to the image, but does not need to exist at any other time (e.g. it may safely be a temporary file). arguments: (OBJECT) Fvalid-glyph-type-p Given a GLYPH-TYPE, return non-nil if it is valid. Valid types are `buffer', `pointer', and `icon'. arguments: (GLYPH-TYPE) Fglyph-type-list Return a list of valid glyph types. arguments: () Fmake-glyph-internal Create a new, uninitialized glyph. TYPE specifies the type of the glyph; this should be one of `buffer', `pointer', or `icon', and defaults to `buffer'. The type of the glyph specifies in which contexts the glyph can be used, and controls the allowable image types into which the glyph's image can be instantiated. `buffer' glyphs can be used as the begin-glyph or end-glyph of an extent, in the modeline, and in the toolbar. Their image can be instantiated as `nothing', `mono-pixmap', `color-pixmap', `text', and `subwindow'. `pointer' glyphs can be used to specify the mouse pointer. Their image can be instantiated as `pointer'. `icon' glyphs can be used to specify the icon used when a frame is iconified. Their image can be instantiated as `mono-pixmap' and `color-pixmap'. arguments: (&optional TYPE) Fglyphp Return non-nil if OBJECT is a glyph. A glyph is an object used for pixmaps and the like. It is used in begin-glyphs and end-glyphs attached to extents, in marginal and textual annotations, in overlay arrows (overlay-arrow-* variables), in toolbar buttons, and the like. Its image is described using an image specifier -- see `image-specifier-p'. arguments: (OBJECT) Fglyph-type Return the type of the given glyph. The return value will be one of 'buffer, 'pointer, or 'icon. arguments: (GLYPH) Fglyph-width Return the width of GLYPH on WINDOW. This may not be exact as it does not take into account all of the context that redisplay will. arguments: (GLYPH &optional WINDOW) Fglyph-ascent Return the ascent value of GLYPH on WINDOW. This may not be exact as it does not take into account all of the context that redisplay will. arguments: (GLYPH &optional WINDOW) Fglyph-descent Return the descent value of GLYPH on WINDOW. This may not be exact as it does not take into account all of the context that redisplay will. arguments: (GLYPH &optional WINDOW) Fglyph-height Return the height of GLYPH on WINDOW. This may not be exact as it does not take into account all of the context that redisplay will. arguments: (GLYPH &optional WINDOW) Voctal-escape-glyph What to prefix character codes displayed in octal with.Vcontrol-arrow-glyph What to use as an arrow for control characters.Vinvisible-text-glyph What to use to indicate the presence of invisible text. This is the glyph that is displayed when an ellipsis is called for (see `selective-display-ellipses' and `buffer-invisibility-spec'). Normally this is three dots ("...").Vhscroll-glyph What to display at the beginning of horizontally scrolled lines.Vcurrent-display-table *The display table currently in use. This is a specifier; use `set-specifier' to change it. The display table is a vector created with `make-display-table'. The 256 elements control how to display each possible text character. Each value should be a string, a glyph, a vector or nil. If a value is a vector it must be composed only of strings and glyphs. nil means display the character in the default fashion. Faces can have their own, overriding display table.Vtruncation-glyph What to display at the end of truncated lines.Vcontinuation-glyph What to display at the end of wrapped lines.Vxemacs-logo The glyph used to display the XEmacs logo at startup.Fcurrent-column Return the horizontal position of point. Beginning of line is column 0. This is calculated by adding together the widths of all the displayed representations of the character between the start of the previous line and point. (e.g. control characters will have a width of 2 or 4, tabs will have a variable width.) Ignores finite width of frame, which means that this function may return values greater than (frame-width). Whether the line is visible (if `selective-display' is t) has no effect; however, ^M is treated as end of line when `selective-display' is t. If BUFFER is nil, the current buffer is assumed. arguments: (&optional BUFFER) Findent-to Indent from point with tabs and spaces until COLUMN is reached. Optional second argument MIN says always do at least MIN spaces even if that goes past COLUMN; by default, MIN is zero. If BUFFER is nil, the current buffer is assumed. arguments: (COL &optional MINIMUM BUFFER) Fcurrent-indentation Return the indentation of the current line. This is the horizontal position of the character following any initial whitespace. arguments: (&optional BUFFER) Fmove-to-column Move point to column COLUMN in the current line. The column of a character is calculated by adding together the widths as displayed of the previous characters in the line. This function ignores line-continuation; there is no upper limit on the column number a character can have and horizontal scrolling has no effect. If specified column is within a character, point goes after that character. If it's past end of line, point goes to end of line. A non-nil second (optional) argument FORCE means, if the line is too short to reach column COLUMN then add spaces/tabs to get there, and if COLUMN is in the middle of a tab character, change it to spaces. Returns the actual column that it moved to. arguments: (COLUMN &optional FORCE BUFFER) Fvertical-motion Move to start of frame line LINES lines down. If LINES is negative, this is moving up. The optional second argument WINDOW specifies the window to use for parameters such as width, horizontal scrolling, and so on. the default is the selected window. Note that `vertical-motion' sets WINDOW's buffer's point, not WINDOW's point. (This differs from FSF Emacs, which buggily always sets current buffer's point, regardless of WINDOW.) Sets point to position found; this may be start of line or just the start of a continuation line. Returns number of lines moved; may be closer to zero than LINES if beginning or end of buffer was reached. Optional second argument is WINDOW to move in. arguments: (LINES &optional WINDOW) Vindent-tabs-mode *Indentation can insert tabs if this is non-nil. Setting this variable automatically makes it local to the current buffer.Fignore-defer-gettext If OBJ is of the form (defer-gettext "string"), return the string. The purpose of the defer-gettext symbol is to identify strings which are translated when they are referenced instead of when they are defined. arguments: (OBJ) Fgettext Look up STRING in the default message domain and return its translation. This function does nothing if I18N3 was not enabled when Emacs was compiled. arguments: (STRING) Fdgettext Look up STRING in the specified message domain and return its translation. This function does nothing if I18N3 was not enabled when Emacs was compiled. arguments: (DOMAIN STRING) Fbind-text-domain Associate a pathname with a message domain. Here's how the path to message files is constructed under SunOS 5.0: {pathname}/{LANG}/LC_MESSAGES/{domain}.mo This function does nothing if I18N3 was not enabled when Emacs was compiled. arguments: (DOMAIN PATHNAME) Fset-domain Specify the domain used for translating messages in this source file. The domain declaration may only appear at top-level, and should precede all function and variable definitions. The presence of this declaration in a compiled file effectively sets the domain of all functions and variables which are defined in that file. Bug: it has no effect on source (.el) files, only compiled (.elc) files. arguments: (DOMAIN-NAME) Fmake-keymap Construct and return a new keymap object. All entries in it are nil, meaning "command undefined". Optional argument NAME specifies a name to assign to the keymap, as in `set-keymap-name'. This name is only a debugging convenience; it is not used except when printing the keymap. arguments: (&optional NAME) Fmake-sparse-keymap Construct and return a new keymap object. All entries in it are nil, meaning "command undefined". The only difference between this function and make-keymap is that this function returns a "smaller" keymap (one that is expected to contain fewer entries). As keymaps dynamically resize, the distinction is not great. Optional argument NAME specifies a name to assign to the keymap, as in `set-keymap-name'. This name is only a debugging convenience; it is not used except when printing the keymap. arguments: (&optional NAME) Fkeymap-parents Return the `parent' keymaps of the given keymap, or nil. The parents of a keymap are searched for keybindings when a key sequence isn't bound in this one. `(current-global-map)' is the default parent of all keymaps. arguments: (KEYMAP) Fset-keymap-parents Sets the `parent' keymaps of the given keymap. The parents of a keymap are searched for keybindings when a key sequence isn't bound in this one. `(current-global-map)' is the default parent of all keymaps. arguments: (KEYMAP PARENTS) Fset-keymap-name Set the `name' of the KEYMAP to NEW-NAME. The name is only a debugging convenience; it is not used except when printing the keymap. arguments: (KEYMAP NEW-NAME) Fkeymap-name Return the `name' of KEYMAP. The name is only a debugging convenience; it is not used except when printing the keymap. arguments: (KEYMAP) Fset-keymap-prompt Sets the `prompt' of KEYMAP to string NEW-PROMPT, or `nil' if no prompt is desired. The prompt is shown in the echo-area when reading a key-sequence to be looked-up in this keymap. arguments: (KEYMAP NEW-PROMPT) Fkeymap-prompt Return the `prompt' of the given keymap. If non-nil, the prompt is shown in the echo-area when reading a key-sequence to be looked-up in this keymap. arguments: (KEYMAP &optional USE-INHERITED) Fset-keymap-default-binding Sets the default binding of KEYMAP to COMMAND, or `nil' if no default is desired. The default-binding is returned when no other binding for a key-sequence is found in the keymap. If a keymap has a non-nil default-binding, neither the keymap's parents nor the current global map are searched for key bindings. arguments: (KEYMAP COMMAND) Fkeymap-default-binding Return the default binding of KEYMAP, or `nil' if it has none. The default-binding is returned when no other binding for a key-sequence is found in the keymap. If a keymap has a non-nil default-binding, neither the keymap's parents nor the current global map are searched for key bindings. arguments: (KEYMAP) Fkeymapp Return t if ARG is a keymap object. The keymap may be autoloaded first if necessary. arguments: (OBJECT) Fcopy-keymap Return a copy of the keymap KEYMAP. The copy starts out with the same definitions of KEYMAP, but changing either the copy or KEYMAP does not affect the other. Any key definitions that are subkeymaps are recursively copied. arguments: (KEYMAP) Fkeymap-fullness Return the number of bindings in the keymap. arguments: (KEYMAP) Fevent-matches-key-specifier-p Return non-nil if EVENT matches KEY-SPECIFIER. This can be useful, e.g., to determine if the user pressed `help-char' or `quit-char'. arguments: (EVENT KEY-SPECIFIER) Fdefine-key Define key sequence KEYS, in KEYMAP, as DEF. KEYMAP is a keymap object. KEYS is the sequence of keystrokes to bind, described below. DEF is anything that can be a key's definition: nil (means key is undefined in this keymap); a command (a Lisp function suitable for interactive calling); a string or key sequence vector (treated as a keyboard macro); a keymap (to define a prefix key); a symbol; when the key is looked up, the symbol will stand for its function definition, that should at that time be one of the above, or another symbol whose function definition is used, and so on. a cons (STRING . DEFN), meaning that DEFN is the definition (DEFN should be a valid definition in its own right); or a cons (KEYMAP . CHAR), meaning use definition of CHAR in map KEYMAP. Contrary to popular belief, the world is not ASCII. When running under a window manager, XEmacs can tell the difference between, for example, the keystrokes control-h, control-shift-h, and backspace. You can, in fact, bind different commands to each of these. A `key sequence' is a set of keystrokes. A `keystroke' is a keysym and some set of modifiers (such as control and meta). A `keysym' is what is printed on the keys on your keyboard. A keysym may be represented by a symbol, or (if and only if it is equivalent to an ASCII character in the range 32 - 255) by a character or its equivalent ASCII code. The `A' key may be represented by the symbol `A', the character `?A', or by the number 65. The `break' key may be represented only by the symbol `break'. A keystroke may be represented by a list: the last element of the list is the key (a symbol, character, or number, as above) and the preceding elements are the symbolic names of modifier keys (control, meta, super, hyper, alt, and shift). Thus, the sequence control-b is represented by the forms `(control b)', `(control ?b)', and `(control 98)'. A keystroke may also be represented by an event object, as returned by the `next-command-event' and `read-key-sequence' functions. Note that in this context, the keystroke `control-b' is *not* represented by the number 2 (the ASCII code for ^B) or the character `?^B'. See below. The `shift' modifier is somewhat of a special case. You should not (and cannot) use `(meta shift a)' to mean `(meta A)', since for characters that have ASCII equivalents, the state of the shift key is implicit in the keysym (a vs. A). You also cannot say `(shift =)' to mean `+', as that sort of thing varies from keyboard to keyboard. The shift modifier is for use only with characters that do not have a second keysym on the same key, such as `backspace' and `tab'. A key sequence is a vector of keystrokes. As a degenerate case, elements of this vector may also be keysyms if they have no modifiers. That is, the `A' keystroke is represented by all of these forms: A ?A 65 (A) (?A) (65) [A] [?A] [65] [(A)] [(?A)] [(65)] the `control-a' keystroke is represented by these forms: (control A) (control ?A) (control 65) [(control A)] [(control ?A)] [(control 65)] the key sequence `control-c control-a' is represented by these forms: [(control c) (control a)] [(control ?c) (control ?a)] [(control 99) (control 65)] etc. Mouse button clicks work just like keypresses: (control button1) means pressing the left mouse button while holding down the control key. [(control c) (shift button3)] means control-c, hold shift, click right. Commands may be bound to the mouse-button up-stroke rather than the down- stroke as well. `button1' means the down-stroke, and `button1up' means the up-stroke. Different commands may be bound to the up and down strokes, though that is probably not what you want, so be careful. For backward compatibility, a key sequence may also be represented by a string. In this case, it represents the key sequence(s) that would produce that sequence of ASCII characters in a purely ASCII world. For example, a string containing the ASCII backspace character, "\^H", would represent two key sequences: `(control h)' and `backspace'. Binding a command to this will actually bind both of those key sequences. Likewise for the following pairs: control h backspace control i tab control m return control j linefeed control [ escape control @ control space After binding a command to two key sequences with a form like (define-key global-map "\^X\^I" 'command-1) it is possible to redefine only one of those sequences like so: (define-key global-map [(control x) (control i)] 'command-2) (define-key global-map [(control x) tab] 'command-3) Of course, all of this applies only when running under a window system. If you're talking to XEmacs through a TTY connection, you don't get any of these features. arguments: (KEYMAP KEYS DEF) Flookup-key In keymap KEYMAP, look up key-sequence KEYS. Return the definition. Nil is returned if KEYS is unbound. See documentation of `define-key' for valid key definitions and key-sequence specifications. A number is returned if KEYS is "too long"; that is, the leading characters fail to be a valid sequence of prefix characters in KEYMAP. The number is how many characters at the front of KEYS it takes to reach a non-prefix command. arguments: (KEYMAP KEYS &optional ACCEPT-DEFAULT) Fcurrent-keymaps Return a list of the current keymaps that will be searched for bindings. This lists keymaps such as the current local map and the minor-mode maps, but does not list the parents of those keymaps. EVENT-OR-KEYS controls which keymaps will be listed. If EVENT-OR-KEYS is a mouse event (or a vector whose last element is a mouse event), the keymaps for that mouse event will be listed (see `key-binding'). Otherwise, the keymaps for key presses will be listed. arguments: (&optional EVENT-OR-KEYS) Fkey-binding Return the binding for command KEYS in current keymaps. KEYS is a string, a vector of events, or a vector of key-description lists as described in the documentation for the `define-key' function. The binding is probably a symbol with a function definition; see the documentation for `lookup-key' for more information. For key-presses, the order of keymaps searched is: - the `keymap' property of any extent(s) at point; - any applicable minor-mode maps; - the current-local-map of the current-buffer; - the current global map. For mouse-clicks, the order of keymaps searched is: - the current-local-map of the `mouse-grabbed-buffer' if any; - the `keymap' property of any extent(s) at the position of the click (this includes modeline extents); - the modeline-map of the buffer corresponding to the modeline under the mouse (if the click happened over a modeline); - the value of toolbar-map in the current-buffer (if the click happened over a toolbar); - the current-local-map of the buffer under the mouse (does not apply to toolbar clicks); - any applicable minor-mode maps; - the current global map. Note that if `overriding-local-map' or `overriding-terminal-local-map' is non-nil, *only* those two maps and the current global map are searched. arguments: (KEYS &optional ACCEPT-DEFAULT) Fuse-global-map Select KEYMAP as the global keymap. arguments: (KEYMAP) Fuse-local-map Select KEYMAP as the local keymap in BUFFER. If KEYMAP is nil, that means no local keymap. If BUFFER is nil, the current buffer is assumed. arguments: (KEYMAP &optional BUFFER) Fcurrent-local-map Return BUFFER's local keymap, or nil if it has none. If BUFFER is nil, the current buffer is assumed. arguments: (&optional BUFFER) Fcurrent-global-map Return the current global keymap. arguments: () Fmap-keymap Apply FUNCTION to each element of KEYMAP. FUNCTION will be called with two arguments: a key-description list, and the binding. The order in which the elements of the keymap are passed to the function is unspecified. If the function inserts new elements into the keymap, it may or may not be called with them later. No element of the keymap will ever be passed to the function more than once. The function will not be called on elements of this keymap's parents (see the function `keymap-parents') or upon keymaps which are contained within this keymap (multi-character definitions). It will be called on "meta" characters since they are not really two-character sequences. If the optional third argument SORT-FIRST is non-nil, then the elements of the keymap will be passed to the mapper function in a canonical order. Otherwise, they will be passed in hash (that is, random) order, which is faster. arguments: (FUNCTION KEYMAP &optional SORT-FIRST) Faccessible-keymaps Find all keymaps accessible via prefix characters from KEYMAP. Returns a list of elements of the form (KEYS . MAP), where the sequence KEYS starting from KEYMAP gets you to MAP. These elements are ordered so that the KEYS increase in length. The first element is ([] . KEYMAP). An optional argument PREFIX, if non-nil, should be a key sequence; then the value includes only maps for prefixes that start with PREFIX. arguments: (KEYMAP &optional PREFIX) Fkey-description Return a pretty description of key-sequence KEYS. Control characters turn into "C-foo" sequences, meta into "M-foo", spaces are put between sequence elements, etc... arguments: (KEYS) Fsingle-key-description Return a pretty description of command character KEY. Control characters turn into C-whatever, etc. This differs from `text-char-description' in that it returns a description of a key read from the user rather than a character from a buffer. arguments: (KEY) Ftext-char-description Return a pretty description of file-character CHR. Unprintable characters turn into "^char" or \NNN, depending on the value of the `ctl-arrow' variable. This differs from `single-key-description' in that it returns a description of a character from a buffer rather than a key read from the user. arguments: (CHR) Fwhere-is-internal Return list of keys that invoke DEFINITION in KEYMAPS. KEYMAPS can be either a keymap (meaning search in that keymap and the current global keymap) or a list of keymaps (meaning search in exactly those keymaps and no others). If KEYMAPS is nil, search in the currently applicable maps for EVENT-OR-KEYS (this is equivalent to specifying `(current-keymaps EVENT-OR-KEYS)' as the argument to KEYMAPS). If optional 3rd arg FIRSTONLY is non-nil, return a vector representing the first key sequence found, rather than a list of all possible key sequences. If optional 4th arg NOINDIRECT is non-nil, don't follow indirections to other keymaps or slots. This makes it possible to search for an indirect definition itself. arguments: (DEFINITION &optional KEYMAPS FIRSTONLY NOINDIRECT EVENT-OR-KEYS) Fdescribe-bindings-internal Insert a list of all defined keys and their definitions in MAP. Optional second argument ALL says whether to include even "uninteresting" definitions (ie symbols with a non-nil `suppress-keymap' property. Third argument SHADOW is a list of keymaps whose bindings shadow those of map; if a binding is present in any shadowing map, it is not printed. Fourth argument PREFIX, if non-nil, should be a key sequence; only bindings which start with that key sequence will be printed. Fifth argument MOUSE-ONLY-P says to only print bindings for mouse clicks. arguments: (MAP &optional ALL SHADOW PREFIX MOUSE-ONLY-P) Vmeta-prefix-char Meta-prefix character. This character followed by some character `foo' turns into `Meta-foo'. This can be any form recognized as a single key specifier. To disable the meta-prefix-char, set it to a negative number.Vmouse-grabbed-buffer A buffer which should be consulted first for all mouse activity. When a mouse-click is processed, it will first be looked up in the local-map of this buffer, and then through the normal mechanism if there is no binding for that click. This buffer's value of `mode-motion-hook' will be consulted instead of the `mode-motion-hook' of the buffer of the window under the mouse. You should *bind* this, not set it.Voverriding-local-map Keymap that overrides all other local keymaps. If this variable is non-nil, it is used as a keymap instead of the buffer's local map, and the minor mode keymaps and extent-local keymaps. You should *bind* this, not set it.Vkey-translation-map Keymap of key translations that can override keymaps. This keymap works like `function-key-map', but comes after that, and applies even for keys that have ordinary bindings.Vkeymap-tick Incremented for each change to any keymap.Fload-internal Execute a file of Lisp code named FILE; no coding-system frobbing. This function is identical to `load' except for the handling of the CODESYS and USED-CODESYS arguments under XEmacs/Mule. (When Mule support is not present, both functions are identical and ignore the CODESYS and USED-CODESYS arguments.) If support for Mule exists in this Emacs, the file is decoded according to CODESYS; if omitted, no conversion happens. If USED-CODESYS is non-nil, it should be a symbol, and the actual coding system that was used for the decoding is stored into it. It will in general be different from CODESYS if CODESYS specifies automatic encoding detection or end-of-line detection. arguments: (FILE &optional NO-ERROR NOMESSAGE NOSUFFIX CODESYS USED-CODESYS) Flocate-file Search for FILENAME through PATH-LIST, expanded by one of the optional SUFFIXES (string of suffixes separated by ":"s), checking for access MODE (0|1|2|4 = exists|executable|writeable|readable), default readable. `locate-file' keeps hash tables of the directories it searches through, in order to speed things up. It tries valiantly to not get confused in the face of a changing and unpredictable environment, but can occasionally get tripped up. In this case, you will have to call `locate-file-clear-hashing' to get it back on track. See that function for details. arguments: (FILENAME PATH-LIST &optional SUFFIXES MODE) Flocate-file-clear-hashing Clear the hash records for the specified list of directories. `locate-file' uses a hashing scheme to speed lookup, and will correctly track the following environmental changes: -- changes of any sort to the list of directories to be searched. -- addition and deletion of non-shadowing files (see below) from the directories in the list. -- byte-compilation of a .el file into a .elc file. `locate-file' will primarily get confused if you add a file that shadows (i.e. has the same name as) another file further down in the directory list. In this case, you must call `locate-file-clear-hashing'. arguments: (PATH) Feval-buffer Execute BUFFER as Lisp code. Programs can pass two arguments, BUFFER and PRINTFLAG. BUFFER is the buffer to evaluate (nil means use current buffer). PRINTFLAG controls printing of output: nil means discard it; anything else is stream for print. If there is no error, point does not move. If there is an error, point remains at the end of the last character read from the buffer. Execute BUFFER as Lisp code. arguments: (&optional BUFNAME PRINTFLAG) Feval-region Execute the region as Lisp code. When called from programs, expects two arguments, giving starting and ending indices in the current buffer of the text to be executed. Programs can pass third argument PRINTFLAG which controls output: nil means discard it; anything else is stream for printing it. If there is no error, point does not move. If there is an error, point remains at the end of the last character read from the buffer. Note: Before evaling the region, this function narrows the buffer to it. If the code being eval'd should happen to trigger a redisplay you may see some text temporarily disappear because of this. arguments: (B E &optional PRINTFLAG) Fread Read one Lisp expression as text from STREAM, return as Lisp object. If STREAM is nil, use the value of `standard-input' (which see). STREAM or the value of `standard-input' may be: a buffer (read from point and advance it) a marker (read from where it points and advance it) a function (call it with no arguments for each character, call it with a char as argument to push a char back) a string (takes text from string, starting at the beginning) t (read text line using minibuffer and use it). arguments: (&optional STREAM) Fread-from-string Read one Lisp expression which is represented as text by STRING. Returns a cons: (OBJECT-READ . FINAL-STRING-INDEX). START and END optionally delimit a substring of STRING from which to read; they default to 0 and (length STRING) respectively. arguments: (STRING &optional START END) Vvalues List of values of all expressions which were read, evaluated and printed. Order is reverse chronological.Vstandard-input Stream for read to get input from. See documentation of `read' for possible values.Vload-path *List of directories to search for files to load. Each element is a string (directory name) or nil (try default directory). Note that the elements of this list *may not* begin with "~", so you must call `expand-file-name' on them before adding them to this list. Initialized based on EMACSLOADPATH environment variable, if any, otherwise to default specified in by file `paths.h' when XEmacs was built. If there were no paths specified in `paths.h', then XEmacs chooses a default value for this variable by looking around in the file-system near the directory in which the XEmacs executable resides.Vload-in-progress Non-nil iff inside of `load'.Vafter-load-alist An alist of expressions to be evalled when particular files are loaded. Each element looks like (FILENAME FORMS...). When `load' is run and the file-name argument is FILENAME, the FORMS in the corresponding element are executed at the end of loading. FILENAME must match exactly! Normally FILENAME is the name of a library, with no directory specified, since that is how `load' is normally called. An error in FORMS does not undo the load, but does prevent execution of the rest of the FORMS.Vload-warn-when-source-newer *Whether `load' should check whether the source is newer than the binary. If this variable is true, then when a `.elc' file is being loaded and the corresponding `.el' is newer, a warning message will be printed.Vload-warn-when-source-only *Whether `load' should warn when loading a `.el' file instead of an `.elc'. If this variable is true, then when `load' is called with a filename without an extension, and the `.elc' version doesn't exist but the `.el' version does, then a message will be printed. If an explicit extension is passed to `load', no warning will be printed.Vload-ignore-elc-files *Whether `load' should ignore `.elc' files when a suffix is not given. This is normally used only to bootstrap the `.elc' files when building XEmacs.Vload-history Alist mapping source file names to symbols and features. Each alist element is a list that starts with a file name, except for one element (optional) that starts with nil and describes definitions evaluated from buffers not visiting files. The remaining elements of each list are symbols defined as functions or variables, and cons cells `(provide . FEATURE)' and `(require . FEATURE)'.Vcurrent-load-list Used for internal purposes by `load'.Vload-file-name Full name of file being loaded by `load'.Vload-read-function "Function used by `load' and `eval-region' for reading expressions. The default is nil, which means use the function `read'.Vload-force-doc-strings Non-nil means `load' should force-load all dynamic doc strings. This is useful when the file being loaded is a temporary copy.Vsource-directory Directory in which XEmacs sources were found when XEmacs was built. You cannot count on them to still be there!Vfail-on-bucky-bit-character-escapes Whether `read' should signal an error when it encounters unsupported character escape syntaxes or just read them incorrectly.Fstart-kbd-macro Record subsequent keyboard and menu input, defining a keyboard macro. The commands are recorded even as they are executed. Use \[end-kbd-macro] to finish recording and make the macro available. Use \[name-last-kbd-macro] to give it a permanent name. Non-nil arg (prefix arg) means append to last macro defined; This begins by re-executing that macro as if you typed it again. arguments: (APPEND) Fend-kbd-macro Finish defining a keyboard macro. The definition was started by \[start-kbd-macro]. The macro is now available for use via \[call-last-kbd-macro], or it can be given a name with \[name-last-kbd-macro] and then invoked under that name. With numeric arg, repeat macro now that many times, counting the definition just completed as the first repetition. An argument of zero means repeat until error. arguments: (&optional ARG) Fcancel-kbd-macro-events Cancel the events added to a keyboard macro for this command. arguments: () Fcall-last-kbd-macro Call the last keyboard macro that you defined with \[start-kbd-macro]. A prefix argument serves as a repeat count. Zero means repeat until error. To make a macro permanent so you can call it even after defining others, use \[name-last-kbd-macro]. arguments: (&optional PREFIX) Fexecute-kbd-macro Execute MACRO as string of editor command characters. If MACRO is a symbol, its function definition is used. COUNT is a repeat count, or nil for once, or 0 for infinite loop. arguments: (MACRO &optional PREFIXARG) Vexecuting-macro Currently executing keyboard macro (a vector of events or string); nil if none executing.Vexecuting-kbd-macro Currently executing keyboard macro (a vector of events or string); nil if none executing.Fmarker-buffer Return the buffer that MARKER points into, or nil if none. Returns nil if MARKER points into a dead buffer. arguments: (MARKER) Fmarker-position Return the position MARKER points at, as a character number. Returns `nil' if marker doesn't point anywhere. arguments: (MARKER) Fset-marker Position MARKER before character number NUMBER in BUFFER. BUFFER defaults to the current buffer. If NUMBER is nil, makes marker point nowhere. Then it no longer slows down editing in any buffer. If this marker was returned by (point-marker t), then changing its position moves point. You cannot change its buffer or make it point nowhere. Returns MARKER. arguments: (MARKER NUMBER &optional BUFFER) Fcopy-marker Return a new marker pointing at the same place as MARKER. If argument is a number, makes a new marker pointing at that position in the current buffer. The optional argument TYPE specifies the insertion type of the new marker; see `marker-insertion-type'. arguments: (MARKER &optional TYPE) Fmarker-insertion-type Return insertion type of MARKER: t if it stays after inserted text. nil means the marker stays before text inserted there. arguments: (MARKER) Fset-marker-insertion-type Set the insertion-type of MARKER to TYPE. If TYPE is t, it means the marker advances when you insert text at it. If TYPE is nil, it means the marker stays behind when you insert text at it. arguments: (MARKER TYPE) Fmd5 Return the MD5 (a secure message digest algorithm) of an object. OBJECT is either a string or a buffer. Optional arguments START and END denote buffer positions for computing the hash of a portion of OBJECT. arguments: (OBJECT &optional START END) Fminibuffer-depth Return current depth of activations of minibuffer, a nonnegative integer. arguments: () Fset-minibuffer-preprompt Set the minibuffer preprompt string to PREPROMPT. This is used by language input methods to relay state information to the user. arguments: (PREPROMPT) Fread-minibuffer-internal Lowest-level interface to minibuffers. Don't call this. arguments: (PROMPT) Ftry-completion Return common substring of all completions of STRING in ALIST. Each car of each element of ALIST is tested to see if it begins with STRING. All that match are compared together; the longest initial sequence common to all matches is returned as a string. If there is no match at all, nil is returned. For an exact match, t is returned. ALIST can be an obarray instead of an alist. Then the print names of all symbols in the obarray are the possible matches. ALIST can also be a function to do the completion itself. It receives three arguments: the values STRING, PREDICATE and nil. Whatever it returns becomes the value of `try-completion'. If optional third argument PREDICATE is non-nil, it is used to test each possible match. The match is a candidate only if PREDICATE returns non-nil. The argument given to PREDICATE is the alist element or the symbol from the obarray. arguments: (STRING ALIST &optional PRED) Fall-completions Search for partial matches to STRING in ALIST. Each car of each element of ALIST is tested to see if it begins with STRING. The value is a list of all the strings from ALIST that match. ALIST can be an obarray instead of an alist. Then the print names of all symbols in the obarray are the possible matches. ALIST can also be a function to do the completion itself. It receives three arguments: the values STRING, PREDICATE and t. Whatever it returns becomes the value of `all-completions'. If optional third argument PREDICATE is non-nil, it is used to test each possible match. The match is a candidate only if PREDICATE returns non-nil. The argument given to PREDICATE is the alist element or the symbol from the obarray. arguments: (STRING ALIST &optional PRED) Vminibuffer-setup-hook Normal hook run just after entry to minibuffer.Vcompletion-ignore-case Non-nil means don't consider case significant in completion.Vcompletion-regexp-list List of regexps that should restrict possible completions. Each completion has to match all regexps in this list.Fmake-color-instance Creates a new `color-instance' object of the specified color. DEVICE specifies the device this object applies to and defaults to the selected device. An error is signalled if the color is unknown or cannot be allocated; however, if NOERROR is non-nil, nil is simply returned in this case. (And if NOERROR is other than t, a warning may be issued.) The returned object is a normal, first-class lisp object. The way you `deallocate' the color is the way you deallocate any other lisp object: you drop all pointers to it and allow it to be garbage collected. When these objects are GCed, the underlying window-system data (e.g. X object) is deallocated as well. arguments: (NAME &optional DEVICE NO-ERROR) Fcolor-instance-p Return non-nil if OBJECT is a color instance. arguments: (OBJECT) Fcolor-instance-name Return the name used to allocate COLOR-INSTANCE. arguments: (COLOR-INSTANCE) Fcolor-instance-rgb-components Return a three element list containing the red, green, and blue color components of COLOR-INSTANCE, or nil if unknown. arguments: (COLOR-INSTANCE) Fvalid-color-name-p Return true if COLOR names a valid color for the current device. Valid color names for X are listed in the file /usr/lib/X11/rgb.txt, or whatever the equivalent is on your system. Valid color names for TTY are those which have an ISO 6429 (ANSI) sequence. In addition to being a color this may be one of a number of attributes such as `blink'. arguments: (COLOR &optional DEVICE) Fmake-font-instance Creates a new `font-instance' object of the specified name. DEVICE specifies the device this object applies to and defaults to the selected device. An error is signalled if the font is unknown or cannot be allocated; however, if NOERROR is non-nil, nil is simply returned in this case. The returned object is a normal, first-class lisp object. The way you `deallocate' the font is the way you deallocate any other lisp object: you drop all pointers to it and allow it to be garbage collected. When these objects are GCed, the underlying X data is deallocated as well. arguments: (NAME &optional DEVICE NO-ERROR) Ffont-instance-p Return non-nil if OBJECT is a font instance. arguments: (OBJECT) Ffont-instance-name Return the name used to allocate FONT-INSTANCE. arguments: (FONT-INSTANCE) Ffont-instance-ascent Return the ascent in pixels of FONT-INSTANCE. The returned value is the maximum ascent for all characters in the font, where a character's ascent is the number of pixels above (and including) the baseline. arguments: (FONT-INSTANCE) Ffont-instance-descent Return the descent in pixels of FONT-INSTANCE. The returned value is the maximum descent for all characters in the font, where a character's descent is the number of pixels below the baseline. (Many characters to do not have any descent. Typical characters with a descent are lowercase p and lowercase g.) arguments: (FONT-INSTANCE) Ffont-instance-width Return the width in pixels of FONT-INSTANCE. The returned value is the average width for all characters in the font. arguments: (FONT-INSTANCE) Ffont-instance-proportional-p Return whether FONT-INSTANCE is proportional. This means that different characters in the font have different widths. arguments: (FONT-INSTANCE) Ffont-instance-truename Return the canonical name of FONT-INSTANCE. Font names are patterns which may match any number of fonts, of which the first found is used. This returns an unambiguous name for that font (but not necessarily its only unambiguous name). arguments: (FONT-INSTANCE) Ffont-instance-properties Return the properties (an alist or nil) of FONT-INSTANCE. arguments: (FONT-INSTANCE) Flist-fonts Return a list of font names matching the given pattern. DEVICE specifies which device to search for names, and defaults to the currently selected device. arguments: (PATTERN &optional DEVICE) Fcolor-specifier-p Return non-nil if OBJECT is a color specifier. Valid instantiators for color specifiers are: -- a string naming a color (e.g. under X this might be "lightseagreen2" or "#F534B2") -- a color instance (use that instance directly if the device matches, or use the string that generated it) -- a vector of no elements (only on TTY's; this means to set no color at all, thus using the "natural" color of the terminal's text) -- a vector of one or two elements: a face to inherit from, and optionally a symbol naming which property of that face to inherit, either `foreground' or `background' (if omitted, defaults to the same property that this color specifier is used for; if this specifier is not part of a face, the instantiator would not be valid) arguments: (OBJECT) Ffont-specifier-p Return non-nil if OBJECT is a font specifier. Valid instantiators for font specifiers are: -- a string naming a font (e.g. under X this might be "-*-courier-medium-r-*-*-*-140-*-*-*-*-iso8859-*" for a 14-point upright medium-weight Courier font) -- a font instance (use that instance directly if the device matches, or use the string that generated it) -- a vector of no elements (only on TTY's; this means to set no font at all, thus using the "natural" font of the terminal's text) -- a vector of one element (a face to inherit from) arguments: (OBJECT) Fface-boolean-specifier-p Return non-nil if OBJECT is a face-boolean specifier. Valid instantiators for face-boolean specifiers are -- t or nil -- a vector of two or three elements: a face to inherit from, optionally a symbol naming the property of that face to inherit from (if omitted, defaults to the same property that this face-boolean specifier is used for; if this specifier is not part of a face, the instantiator would not be valid), and optionally a value which, if non-nil, means to invert the sense of the inherited property. arguments: (OBJECT) Fwrite-char Output character CH to stream STREAM. STREAM defaults to the value of `standard-output' (which see). arguments: (CH &optional STREAM) Fwith-output-to-temp-buffer Bind `standard-output' to buffer BUFNAME, eval BODY, then show that buffer. The buffer is cleared out initially, and marked as unmodified when done. All output done by BODY is inserted in that buffer by default. The buffer is displayed in another window, but not selected. The value of the last form in BODY is returned. If BODY does not finish normally, the buffer BUFNAME is not displayed. If variable `temp-buffer-show-function' is non-nil, call it at the end to get the buffer displayed. It gets one argument, the buffer to display.Fterpri Output a newline to STREAM. If STREAM is omitted or nil, the value of `standard-output' is used. arguments: (&optional STREAM) Fprin1 Output the printed representation of OBJECT, any Lisp object. Quoting characters are printed when needed to make output that `read' can handle, whenever this is possible. Output stream is STREAM, or value of `standard-output' (which see). arguments: (OBJECT &optional STREAM) Fprin1-to-string Return a string containing the printed representation of OBJECT, any Lisp object. Quoting characters are used when needed to make output that `read' can handle, whenever this is possible, unless the optional second argument NOESCAPE is non-nil. arguments: (OBJECT &optional NOESCAPE) Fprinc Output the printed representation of OBJECT, any Lisp object. No quoting characters are used; no delimiters are printed around the contents of strings. Output stream is STREAM, or value of standard-output (which see). arguments: (OBJ &optional STREAM) Fprint Output the printed representation of OBJECT, with newlines around it. Quoting characters are printed when needed to make output that `read' can handle, whenever this is possible. Output stream is STREAM, or value of `standard-output' (which see). arguments: (OBJ &optional STREAM) Ferror-message-string Convert an error value (ERROR-SYMBOL . DATA) to an error message. arguments: (DATA) Fdisplay-error Display an error message for ERROR-OBJECT to STREAM. arguments: (ERROR-OBJECT STREAM) Falternate-debugging-output Append CHARACTER to the array `alternate_do_string'. This can be used in place of `external-debugging-output' as a function to be passed to `print'. Before calling `print', set `alternate_do_pointer' to 0. arguments: (CHARACTER) Fexternal-debugging-output Write CHAR-OR-STRING to stderr or stdout. If optional arg STDOUT-P is non-nil, write to stdout; otherwise, write to stderr. You can use this function to write directly to the terminal. This function can be used as the STREAM argument of Fprint() or the like. If you have opened a termscript file (using `open-termscript'), then the output also will be logged to this file. arguments: (CHAR-OR-STRING &optional STDOUT-P DEVICE) Fopen-termscript Start writing all terminal output to FILE as well as the terminal. FILE = nil means just close any termscript file currently open. arguments: (FILE) Vstandard-output Output stream `print' uses by default for outputting a character. This may be any function of one argument. It may also be a buffer (output is inserted before point) or a marker (output is inserted and the marker is advanced) or the symbol t (output appears in the minibuffer line).Vfloat-output-format The format descriptor string that lisp uses to print floats. This is a %-spec like those accepted by `printf' in C, but with some restrictions. It must start with the two characters `%.'. After that comes an integer precision specification, and then a letter which controls the format. The letters allowed are `e', `f' and `g'. Use `e' for exponential notation "DIG.DIGITSeEXPT" Use `f' for decimal point notation "DIGITS.DIGITS". Use `g' to choose the shorter of those two formats for the number at hand. The precision in any of these cases is the number of digits following the decimal point. With `f', a precision of 0 means to omit the decimal point. 0 is not allowed with `f' or `g'. A value of nil means to use `%.16g'. Regardless of the value of `float-output-format', a floating point number will never be printed in such a way that it is ambiguous with an integer; that is, a floating-point number will always be printed with a decimal point and/or an exponent, even if the digits following the decimal point are all zero. This is to preserve read-equivalence.Vprint-length Maximum length of list or vector to print before abbreviating. A value of nil means no limit.Vprint-string-length Maximum length of string to print before abbreviating. A value of nil means no limit.Vprint-level Maximum depth of list nesting to print before abbreviating. A value of nil means no limit.Vprint-escape-newlines Non-nil means print newlines in strings as backslash-n.Vprint-readably If non-nil, then all objects will be printed in a readable form. If an object has no readable representation, then an error is signalled. When print-readably is true, compiled-function objects will be written in #[...] form instead of in #<compiled-function [...]> form, and two-element lists of the form (quote object) will be written as the equivalent 'object. Do not SET this variable; bind it instead.Vprint-gensym If non-nil, then uninterned symbols will be printed specially. Uninterned symbols are those which are not present in `obarray', that is, those which were made with `make-symbol' or by calling `intern' with a second argument. When print-gensym is true, such symbols will be preceded by "#:", which causes the reader to create a new symbol instead of interning and returning an existing one. Beware: the #: syntax creates a new symbol each time it is seen, so if you print an object which contains two pointers to the same uninterned symbol, `read' will not duplicate that structure. Also, since XEmacs has no real notion of packages, there is no way for the printer to distinguish between symbols interned in no obarray, and symbols interned in an alternate obarray.Vprint-message-label Label for minibuffer messages created with `print'. This should generally be bound with `let' rather than set. (See `display-message'.)Fprocessp Return t if OBJECT is a process. arguments: (OBJ) Fprocess-list Return a list of all processes. arguments: () Fget-process Return the process named NAME, or nil if there is none. arguments: (NAME) Fget-buffer-process Return the (or, a) process associated with BUFFER. BUFFER may be a buffer or the name of one. arguments: (NAME) Fprocess-id Return the process id of PROCESS. This is the pid of the Unix process which PROCESS uses or talks to. For a network connection, this value is a cons of (foreign-network-port . foreign-host-name). arguments: (PROC) Fprocess-name Return the name of PROCESS, as a string. This is the name of the program invoked in PROCESS, possibly modified to make it unique among process names. arguments: (PROC) Fprocess-command Return the command that was executed to start PROCESS. This is a list of strings, the first string being the program executed and the rest of the strings being the arguments given to it. arguments: (PROC) Fstart-process-internal Start a program in a subprocess. Return the process object for it. Args are NAME BUFFER PROGRAM &rest PROGRAM-ARGS NAME is name for process. It is modified if necessary to make it unique. BUFFER is the buffer or (buffer-name) to associate with the process. Process output goes at end of that buffer, unless you specify an output stream or filter function to handle the output. BUFFER may be also nil, meaning that this process is not associated with any buffer Third arg is program file name. It is searched for as in the shell. Remaining arguments are strings to give program as arguments. INCODE and OUTCODE specify the coding-system objects used in input/output from/to the process.Fopen-network-stream-internal Open a TCP connection for a service to a host. Returns a subprocess-object to represent the connection. Input and output work as for subprocesses; `delete-process' closes it. NAME is name for process. It is modified if necessary to make it unique. BUFFER is the buffer (or buffer-name) to associate with the process. Process output goes at end of that buffer, unless you specify an output stream or filter function to handle the output. BUFFER may also be nil, meaning that this process is not associated with any buffer. Third arg is name of the host to connect to, or its IP address. Fourth arg SERVICE is name of the service desired, or an integer specifying a port number to connect to. arguments: (NAME BUFFER HOST SERVICE) Fset-process-window-size Tell PROCESS that it has logical window size HEIGHT and WIDTH. arguments: (PROC HEIGHT WIDTH) Fprocess-tty-name Return the name of the terminal PROCESS uses, or nil if none. This is the terminal that the process itself reads and writes on, not the name of the pty that Emacs uses to talk with that terminal. arguments: (PROC) Fset-process-buffer Set buffer associated with PROCESS to BUFFER (a buffer, or nil). arguments: (PROC BUFFER) Fprocess-buffer Return the buffer PROCESS is associated with. Output from PROCESS is inserted in this buffer unless PROCESS has a filter. arguments: (PROC) Fprocess-mark Return the marker for the end of the last output from PROCESS. arguments: (PROC) Fset-process-filter Give PROCESS the filter function FILTER; nil means no filter. t means stop accepting output from the process. When a process has a filter, each time it does output the entire string of output is passed to the filter. The filter gets two arguments: the process and the string of output. If the process has a filter, its buffer is not used for output. arguments: (PROC FILTER) Fprocess-filter Return the filter function of PROCESS; nil if none. See `set-process-filter' for more info on filter functions. arguments: (PROC) Fprocess-send-region Send current contents of region as input to PROCESS. PROCESS may be a process name or an actual process. Called from program, takes three arguments, PROCESS, START and END. If the region is more than 500 or so characters long, it is sent in several bunches. This may happen even for shorter regions. Output from processes can arrive in between bunches. arguments: (PROCESS START END) Fprocess-send-string Send PROCESS the contents of STRING as input. PROCESS may be a process name or an actual process. Optional arguments FROM and TO specify part of STRING, see `substring'. If STRING is more than 500 or so characters long, it is sent in several bunches. This may happen even for shorter strings. Output from processes can arrive in between bunches. arguments: (PROCESS STRING &optional FROM TO) Fprocess-input-coding-system Return PROCESS's input coding system. arguments: (PROCESS) Fprocess-output-coding-system Return PROCESS's output coding system. arguments: (PROCESS) Fprocess-coding-system Return a pair of coding-system for decoding and encoding of PROCESS. arguments: (PROCESS) Fset-process-input-coding-system Set PROCESS's input coding system to CODESYS. arguments: (PROCESS CODESYS) Fset-process-output-coding-system Set PROCESS's output coding system to CODESYS. arguments: (PROCESS CODESYS) Fset-process-coding-system Set coding-systems of PROCESS to DECODING and ENCODING. arguments: (PROCESS &optional DECODING ENCODING) Fset-process-sentinel Give PROCESS the sentinel SENTINEL; nil for none. The sentinel is called as a function when the process changes state. It gets two arguments: the process, and a string describing the change. arguments: (PROC SENTINEL) Fprocess-sentinel Return the sentinel of PROCESS; nil if none. See `set-process-sentinel' for more info on sentinels. arguments: (PROC) Fprocess-status Return the status of PROCESS. This is a symbol, one of these: run -- for a process that is running. stop -- for a process stopped but continuable. exit -- for a process that has exited. signal -- for a process that has got a fatal signal. open -- for a network stream connection that is open. closed -- for a network stream connection that is closed. nil -- if arg is a process name and no such process exists. PROCESS may be a process, a buffer, the name of a process or buffer, or nil, indicating the current buffer's process. arguments: (PROC) Fprocess-exit-status Return the exit status of PROCESS or the signal number that killed it. If PROCESS has not yet exited or died, return 0. arguments: (PROC) Finterrupt-process Interrupt process PROCESS. May be process or name of one. Nil or no arg means current buffer's process. Second arg CURRENT-GROUP non-nil means send signal to the current process-group of the process's controlling terminal rather than to the process's own process group. If the process is a shell, this means interrupt current subjob rather than the shell. arguments: (&optional PROCESS CURRENT-GROUP) Fkill-process Kill process PROCESS. May be process or name of one. See function `interrupt-process' for more details on usage. arguments: (&optional PROCESS CURRENT-GROUP) Fquit-process Send QUIT signal to process PROCESS. May be process or name of one. See function `interrupt-process' for more details on usage. arguments: (&optional PROCESS CURRENT-GROUP) Fstop-process Stop process PROCESS. May be process or name of one. See function `interrupt-process' for more details on usage. arguments: (&optional PROCESS CURRENT-GROUP) Fcontinue-process Continue process PROCESS. May be process or name of one. See function `interrupt-process' for more details on usage. arguments: (&optional PROCESS CURRENT-GROUP) Fsignal-process Send the process with process id PID the signal with code SIGCODE. PID must be an integer. The process need not be a child of this Emacs. SIGCODE may be an integer, or a symbol whose name is a signal name. arguments: (PID SIGCODE) Fprocess-send-eof Make PROCESS see end-of-file in its input. PROCESS may be a process, a buffer, the name of a process or buffer, or nil, indicating the current buffer's process. If PROCESS is a network connection, or is a process communicating through a pipe (as opposed to a pty), then you cannot send any more text to PROCESS after you call this function. arguments: (&optional PROCESS) Fdelete-process Delete PROCESS: kill it and forget about it immediately. PROCESS may be a process or the name of one, or a buffer name. arguments: (PROC) Fprocess-kill-without-query Say no query needed if PROCESS is running when Emacs is exited. Optional second argument if non-nil says to require a query. Value is t if a query was formerly required. arguments: (PROC &optional REQUIRE-QUERY-P) Fprocess-kill-without-query-p Whether PROC will be killed without query if running when emacs is exited. arguments: (PROC) Vdelete-exited-processes *Non-nil means delete processes immediately when they exit. nil means don't delete them until `list-processes' is run.Vprocess-connection-type Control type of device used to communicate with subprocesses. Values are nil to use a pipe, or t or `pty' to use a pty. The value has no effect if the system has no ptys or if all ptys are busy: then a pipe is used in any case. The value takes effect when `start-process' is called.Vnetwork-stream-blocking-port-list List of port numbers or port names to set a blocking I/O mode with connection. Nil value means to set a default(non-blocking) I/O mode. The value takes effect when `open-network-stream-internal' is called.Fstart-profiling Start profiling, with profile queries every MICROSECS. If MICROSECS is nil or omitted, the value of `default-profiling-interval' is used. You can retrieve the recorded profiling info using `get-profiling-info'. Starting and stopping profiling does not clear the currently recorded info. Thus you can start and stop as many times as you want and everything will be properly accumulated. arguments: (&optional MICROSECS) Fstop-profiling Stop profiling. arguments: () Fget-profiling-info Return the profiling info as an alist. arguments: () Fclear-profiling-info Clear out the recorded profiling info. arguments: () Fprofiling-active-p Return non-nil if profiling information is currently being recorded. arguments: () Vdefault-profiling-interval Default time in microseconds between profiling queries. Used when the argument to `start-profiling' is nil or omitted. Note that the time in question is CPU time (when the program is executing or the kernel is executing on behalf of the program) and not real time.Frange-table-p Return non-nil if OBJECT is a range table. arguments: (OBJECT) Fmake-range-table Make a new, empty range table. You can manipulate it using `put-range-table', `get-range-table', `remove-range-table', and `clear-range-table'. arguments: () Fcopy-range-table Make a new range table which contains the same values for the same ranges as the given table. The values will not themselves be copied. arguments: (OLD-TABLE) Fget-range-table Find value for position POS in TABLE. If there is no corresponding value, return DEFAULT (defaults to nil). arguments: (POS TABLE &optional DEFAULT) Fput-range-table Set the value for range (START, END) to be VAL in TABLE. arguments: (START END VAL TABLE) Fremove-range-table Remove the value for range (START, END) in TABLE. arguments: (START END TABLE) Fclear-range-table Flush TABLE. arguments: (TABLE) Fmap-range-table Map FUNCTION over entries in TABLE, calling it with three args, the beginning and end of the range and the corresponding value. arguments: (FUNCTION TABLE) Fredisplay-echo-area Ensure that all minibuffers are correctly showing the echo area. arguments: () Fredraw-frame Clear frame FRAME and output again what is supposed to appear on it. FRAME defaults to the selected frame if omitted. Normally, redisplay is preempted as normal if input arrives. However, if optional second arg NO-PREEMPT is non-nil, redisplay will not stop for input and is guaranteed to proceed to completion. arguments: (&optional FRAME NO-PREEMPT) Fredisplay-frame Ensure that FRAME's contents are correctly displayed. This differs from `redraw-frame' in that it only redraws what needs to be updated, as opposed to unconditionally clearing and redrawing the frame. FRAME defaults to the selected frame if omitted. Normally, redisplay is preempted as normal if input arrives. However, if optional second arg NO-PREEMPT is non-nil, redisplay will not stop for input and is guaranteed to proceed to completion. arguments: (&optional FRAME NO-PREEMPT) Fredraw-device Clear device DEVICE and output again what is supposed to appear on it. DEVICE defaults to the selected device if omitted. Normally, redisplay is preempted as normal if input arrives. However, if optional second arg NO-PREEMPT is non-nil, redisplay will not stop for input and is guaranteed to proceed to completion. arguments: (&optional DEVICE NO-PREEMPT) Fredisplay-device Ensure that DEVICE's contents are correctly displayed. This differs from `redraw-device' in that it only redraws what needs to be updated, as opposed to unconditionally clearing and redrawing the device. DEVICE defaults to the selected device if omitted. Normally, redisplay is preempted as normal if input arrives. However, if optional second arg NO-PREEMPT is non-nil, redisplay will not stop for input and is guaranteed to proceed to completion. arguments: (&optional DEVICE NO-PREEMPT) Fredraw-modeline Force the modeline of the current buffer to be redisplayed. With optional non-nil ALL, force redisplay of all modelines. arguments: (&optional ALL) Fforce-cursor-redisplay Force an immediate update of the cursor on FRAME. FRAME defaults to the selected frame if omitted. arguments: (&optional FRAME) Vredisplay-cache-adjustment (Temporary) Setting this will impact the performance of the internal line start cache.Vpixel-vertical-clip-threshold Minimum pixel height for clipped bottom display line. A clipped line shorter than this won't be displayed.Vpixel-horizontal-clip-threshold Minimum visible area for clipped glyphs at right boundary. Clipped glyphs shorter than this won't be displayed. Only pixmap glyph instances are currently allowed to be clipped.Vglobal-mode-string String displayed by modeline-format's "%m" specification.Voverlay-arrow-position Marker for where to display an arrow on top of the buffer text. This must be the beginning of a line in order to work. See also `overlay-arrow-string'.Voverlay-arrow-string String to display as an arrow. See also `overlay-arrow-position'.Vscroll-step *The number of lines to try scrolling a window by when point moves out. If that fails to bring point back on frame, point is centered instead. If this is zero, point is always centered after it moves off screen.Vscroll-conservatively *Scroll up to this many lines, to bring point back on screen.Vtruncate-partial-width-windows *Non-nil means truncate lines in all windows less than full frame wide.Vvisible-bell *Non-nil means try to flash the frame to represent a bell.Vno-redraw-on-reenter *Non-nil means no need to redraw entire frame after suspending. A non-nil value is useful if the terminal can automatically preserve Emacs's frame display when you reenter Emacs. It is up to you to set this variable if your terminal can do that.Vwindow-system A symbol naming the window-system under which Emacs is running, such as `x', or nil if emacs is running on an ordinary terminal. Do not use this variable, except for GNU Emacs compatibility, as it gives wrong values in a multi-device environment. Use `console-type' instead.Vinitial-window-system DON'T TOUCHVcursor-in-echo-area Non-nil means put cursor in minibuffer, at end of any message there.Vbar-cursor Use vertical bar cursor if non-nil. If t width is 1 pixel, otherwise 2.Vdisplay-warning-tick Bump this to tell the C code to call `display-warning-buffer' at next redisplay. You should not normally change this; the function `display-warning' automatically does this at appropriate times.Vinhibit-warning-display Non-nil means inhibit display of warning messages. You should *bind* this, not set it. Any pending warning messages will be displayed when the binding no longer applies.Vwindow-size-change-functions Not currently implemented. Functions called before redisplay, if window sizes have changed. The value should be a list of functions that take one argument. Just before redisplay, for each frame, if any of its windows have changed size since the last redisplay, or have been split or deleted, all the functions in the list are called, with the frame as argument.Vwindow-scroll-functions Not currently implemented. Functions to call before redisplaying a window with scrolling. Each function is called with two arguments, the window and its new display-start position. Note that the value of `window-end' is not valid when these functions are called.Vredisplay-end-trigger-functions See `set-window-redisplay-end-trigger'.Vcolumn-number-start-at-one *Non-nil means column display number starts at 1.Vleft-margin-width *Width of left margin. This is a specifier; use `set-specifier' to change it.Vright-margin-width *Width of right margin. This is a specifier; use `set-specifier' to change it.Vminimum-line-ascent *Minimum ascent height of lines. This is a specifier; use `set-specifier' to change it.Vminimum-line-descent *Minimum descent height of lines. This is a specifier; use `set-specifier' to change it.Vuse-left-overflow *Non-nil means use the left outside margin as extra whitespace when displaying 'whitespace or 'inside-margin glyphs. This is a specifier; use `set-specifier' to change it.Vuse-right-overflow *Non-nil means use the right outside margin as extra whitespace when displaying 'whitespace or 'inside-margin glyphs. This is a specifier; use `set-specifier' to change it.Vtext-cursor-visible-p *Non-nil means the text cursor is visible (this is usually the case). This is a specifier; use `set-specifier' to change it.Flooking-at Return t if text after point matches regular expression REGEXP. This function modifies the match data that `match-beginning', `match-end' and `match-data' access; save and restore the match data if you want to preserve them. Optional argument BUFFER defaults to the current buffer. arguments: (REGEXP &optional BUFFER) Fposix-looking-at Return t if text after point matches regular expression REGEXP. Find the longest match, in accord with Posix regular expression rules. This function modifies the match data that `match-beginning', `match-end' and `match-data' access; save and restore the match data if you want to preserve them. Optional argument BUFFER defaults to the current buffer. arguments: (REGEXP &optional BUFFER) Fstring-match Return index of start of first match for REGEXP in STRING, or nil. If third arg START is non-nil, start search at that index in STRING. For index of first char beyond the match, do (match-end 0). `match-end' and `match-beginning' also give indices of substrings matched by parenthesis constructs in the pattern. Optional arg BUFFER controls how case folding is done (according to the value of `case-fold-search' in that buffer and that buffer's case tables) and defaults to the current buffer. arguments: (REGEXP STRING &optional START BUFFER) Fposix-string-match Return index of start of first match for REGEXP in STRING, or nil. Find the longest match, in accord with Posix regular expression rules. If third arg START is non-nil, start search at that index in STRING. For index of first char beyond the match, do (match-end 0). `match-end' and `match-beginning' also give indices of substrings matched by parenthesis constructs in the pattern. Optional arg BUFFER controls how case folding is done (according to the value of `case-fold-search' in that buffer and that buffer's case tables) and defaults to the current buffer. arguments: (REGEXP STRING &optional START BUFFER) Fskip-chars-forward Move point forward, stopping before a char not in STRING, or at pos LIM. STRING is like the inside of a `[...]' in a regular expression except that `]' is never special and `\' quotes `^', `-' or `\'. Thus, with arg "a-zA-Z", this skips letters stopping before first nonletter. With arg "^a-zA-Z", skips nonletters stopping before first letter. Returns the distance traveled, either zero or positive. Optional argument BUFFER defaults to the current buffer. arguments: (STRING &optional LIM BUFFER) Fskip-chars-backward Move point backward, stopping after a char not in STRING, or at pos LIM. See `skip-chars-forward' for details. Returns the distance traveled, either zero or negative. Optional argument BUFFER defaults to the current buffer. arguments: (STRING &optional LIM BUFFER) Fskip-syntax-forward Move point forward across chars in specified syntax classes. SYNTAX is a string of syntax code characters. Stop before a char whose syntax is not in SYNTAX, or at position LIM. If SYNTAX starts with ^, skip characters whose syntax is NOT in SYNTAX. This function returns the distance traveled, either zero or positive. Optional argument BUFFER defaults to the current buffer. arguments: (SYNTAX &optional LIM BUFFER) Fskip-syntax-backward Move point backward across chars in specified syntax classes. SYNTAX is a string of syntax code characters. Stop on reaching a char whose syntax is not in SYNTAX, or at position LIM. If SYNTAX starts with ^, skip characters whose syntax is NOT in SYNTAX. This function returns the distance traveled, either zero or negative. Optional argument BUFFER defaults to the current buffer. arguments: (SYNTAX &optional LIM BUFFER) Fsearch-backward Search backward from point for STRING. Set point to the beginning of the occurrence found, and return point. An optional second argument bounds the search; it is a buffer position. The match found must not extend before that position. Optional third argument, if t, means if fail just return nil (no error). If not nil and not t, position at limit of search and return nil. Optional fourth argument is repeat count--search for successive occurrences. Optional fifth argument BUFFER specifies the buffer to search in and defaults to the current buffer. See also the functions `match-beginning', `match-end' and `replace-match'. arguments: (STRING &optional BOUND NO-ERROR COUNT BUFFER) Fsearch-forward Search forward from point for STRING. Set point to the end of the occurrence found, and return point. An optional second argument bounds the search; it is a buffer position. The match found must not extend after that position. nil is equivalent to (point-max). Optional third argument, if t, means if fail just return nil (no error). If not nil and not t, move to limit of search and return nil. Optional fourth argument is repeat count--search for successive occurrences. Optional fifth argument BUFFER specifies the buffer to search in and defaults to the current buffer. See also the functions `match-beginning', `match-end' and `replace-match'. arguments: (STRING &optional BOUND NO-ERROR COUNT BUFFER) Fword-search-backward Search backward from point for STRING, ignoring differences in punctuation. Set point to the beginning of the occurrence found, and return point. An optional second argument bounds the search; it is a buffer position. The match found must not extend before that position. Optional third argument, if t, means if fail just return nil (no error). If not nil and not t, move to limit of search and return nil. Optional fourth argument is repeat count--search for successive occurrences. Optional fifth argument BUFFER specifies the buffer to search in and defaults to the current buffer. arguments: (STRING &optional BOUND NO-ERROR COUNT BUFFER) Fword-search-forward Search forward from point for STRING, ignoring differences in punctuation. Set point to the end of the occurrence found, and return point. An optional second argument bounds the search; it is a buffer position. The match found must not extend after that position. Optional third argument, if t, means if fail just return nil (no error). If not nil and not t, move to limit of search and return nil. Optional fourth argument is repeat count--search for successive occurrences. Optional fifth argument BUFFER specifies the buffer to search in and defaults to the current buffer. arguments: (STRING &optional BOUND NO-ERROR COUNT BUFFER) Fre-search-backward Search backward from point for match for regular expression REGEXP. Set point to the beginning of the match, and return point. The match found is the one starting last in the buffer and yet ending before the origin of the search. An optional second argument bounds the search; it is a buffer position. The match found must start at or after that position. Optional third argument, if t, means if fail just return nil (no error). If not nil and not t, move to limit of search and return nil. Optional fourth argument is repeat count--search for successive occurrences. Optional fifth argument BUFFER specifies the buffer to search in and defaults to the current buffer. See also the functions `match-beginning', `match-end' and `replace-match'. arguments: (REGEXP &optional BOUND NO-ERROR COUNT BUFFER) Fre-search-forward Search forward from point for regular expression REGEXP. Set point to the end of the occurrence found, and return point. An optional second argument bounds the search; it is a buffer position. The match found must not extend after that position. Optional third argument, if t, means if fail just return nil (no error). If not nil and not t, move to limit of search and return nil. Optional fourth argument is repeat count--search for successive occurrences. Optional fifth argument BUFFER specifies the buffer to search in and defaults to the current buffer. See also the functions `match-beginning', `match-end' and `replace-match'. arguments: (REGEXP &optional BOUND NO-ERROR COUNT BUFFER) Fposix-search-backward Search backward from point for match for regular expression REGEXP. Find the longest match in accord with Posix regular expression rules. Set point to the beginning of the match, and return point. The match found is the one starting last in the buffer and yet ending before the origin of the search. An optional second argument bounds the search; it is a buffer position. The match found must start at or after that position. Optional third argument, if t, means if fail just return nil (no error). If not nil and not t, move to limit of search and return nil. Optional fourth argument is repeat count--search for successive occurrences. Optional fifth argument BUFFER specifies the buffer to search in and defaults to the current buffer. See also the functions `match-beginning', `match-end' and `replace-match'. arguments: (REGEXP &optional BOUND NO-ERROR COUNT BUFFER) Fposix-search-forward Search forward from point for regular expression REGEXP. Find the longest match in accord with Posix regular expression rules. Set point to the end of the occurrence found, and return point. An optional second argument bounds the search; it is a buffer position. The match found must not extend after that position. Optional third argument, if t, means if fail just return nil (no error). If not nil and not t, move to limit of search and return nil. Optional fourth argument is repeat count--search for successive occurrences. Optional fifth argument BUFFER specifies the buffer to search in and defaults to the current buffer. See also the functions `match-beginning', `match-end' and `replace-match'. arguments: (REGEXP &optional BOUND NO-ERROR COUNT BUFFER) Freplace-match Replace text matched by last search with NEWTEXT. If second arg FIXEDCASE is non-nil, do not alter case of replacement text. Otherwise maybe capitalize the whole text, or maybe just word initials, based on the replaced text. If the replaced text has only capital letters and has at least one multiletter word, convert NEWTEXT to all caps. If the replaced text has at least one word starting with a capital letter, then capitalize each word in NEWTEXT. If third arg LITERAL is non-nil, insert NEWTEXT literally. Otherwise treat `\' as special: `\&' in NEWTEXT means substitute original matched text. `\N' means substitute what matched the Nth `\(...\)'. If Nth parens didn't match, substitute nothing. `\\' means insert one `\'. `\u' means upcase the next character. `\l' means downcase the next character. `\U' means begin upcasing all following characters. `\L' means begin downcasing all following characters. `\E' means terminate the effect of any `\U' or `\L'. Case changes made with `\u', `\l', `\U', and `\L' override all other case changes that may be made in the replaced text. FIXEDCASE and LITERAL are optional arguments. Leaves point at end of replacement text. The optional fourth argument STRING can be a string to modify. In that case, this function creates and returns a new string which is made by replacing the part of STRING that was matched. When fourth argument is a string, fifth argument STRBUFFER specifies the buffer to be used for syntax-table and case-table lookup and defaults to the current buffer. (When fourth argument is not a string, the buffer that the match occurred in has automatically been remembered and you do not need to specify it.) arguments: (NEWTEXT &optional FIXEDCASE LITERAL STRING STRBUFFER) Fmatch-beginning Return position of start of text matched by last regexp search. NUM, specifies which parenthesized expression in the last regexp. Value is nil if NUMth pair didn't match, or there were less than NUM pairs. Zero means the entire text matched by the whole regexp or whole string. arguments: (NUM) Fmatch-end Return position of end of text matched by last regexp search. NUM specifies which parenthesized expression in the last regexp. Value is nil if NUMth pair didn't match, or there were less than NUM pairs. Zero means the entire text matched by the whole regexp or whole string. arguments: (NUM) Fmatch-data Return a list containing all info on what the last regexp search matched. Element 2N is `(match-beginning N)'; element 2N + 1 is `(match-end N)'. All the elements are markers or nil (nil if the Nth pair didn't match) if the last match was on a buffer; integers or nil if a string was matched. Use `store-match-data' to reinstate the data in this list. arguments: () Fstore-match-data Set internal data on last search match from elements of LIST. LIST should have been created by calling `match-data' previously. arguments: (LIST) Fregexp-quote Return a regexp string which matches exactly STRING and nothing else. arguments: (STR) Fset-word-regexp Set the regexp to be used to match a word in regular-expression searching. #### Not yet implemented. Currently does nothing. #### Do not use this yet. Its calling interface is likely to change. arguments: (REGEXP) Vforward-word-regexp *Regular expression to be used in `forward-word'. #### Not yet implemented.Vbackward-word-regexp *Regular expression to be used in `backward-word'. #### Not yet implemented.Fwaiting-for-user-input-p Return non-nil if XEmacs is waiting for input from the user. This is intended for use by asynchronous timeout callbacks and by asynchronous process output filters and sentinels (not yet implemented in XEmacs). It will always be nil if XEmacs is not inside of an asynchronout timeout or process callback. arguments: () Fplay-sound-file Play the named sound file on DEVICE's speaker at the specified volume (0-100, default specified by the `bell-volume' variable). The sound file must be in the Sun/NeXT U-LAW format except under Linux where WAV files are also supported. DEVICE defaults to the selected device. arguments: (FILE &optional VOLUME DEVICE) Fplay-sound Play a sound of the provided type. See the variable `sound-alist'. arguments: (SOUND &optional VOLUME DEVICE) Fdevice-sound-enabled-p Return T iff DEVICE is able to play sound. Defaults to selected device. arguments: (&optional DEVICE) Fding Beep, or flash the frame. Also, unless an argument is given, terminate any keyboard macro currently executing. When called from lisp, the second argument is what sound to make, and the third argument is the device to make it in (defaults to the selected device). arguments: (&optional ARG SOUND DEVICE) Fwait-for-sounds Wait for all sounds to finish playing on DEVICE. arguments: (&optional DEVICE) Fconnected-to-nas-p t if connected to NAS server for sounds on DEVICE. arguments: (&optional DEVICE) Vbell-volume *How loud to be, from 0 to 100.Vsound-alist An alist associating names with sounds. When `beep' or `ding' is called with one of the name symbols, the associated sound will be generated instead of the standard beep. Each element of `sound-alist' is a list describing a sound. The first element of the list is the name of the sound being defined. Subsequent elements of the list are alternating keyword/value pairs: Keyword: Value: ------- ----- sound A string of raw sound data, or the name of another sound to play. The symbol `t' here means use the default X beep. volume An integer from 0-100, defaulting to `bell-volume' pitch If using the default X beep, the pitch (Hz) to generate. duration If using the default X beep, the duration (milliseconds). For compatibility, elements of `sound-alist' may also be: ( sound-name . <sound> ) ( sound-name <volume> <sound> ) You should probably add things to this list by calling the function load-sound-file. Caveats: - You can only play audio data if running on the console screen of a Sun SparcStation, SGI, or HP9000s700. - The pitch, duration, and volume options are available everywhere, but many X servers ignore the `pitch' option. The following beep-types are used by emacs itself: auto-save-error when an auto-save does not succeed command-error when the emacs command loop catches an error undefined-key when you type a key that is undefined undefined-click when you use an undefined mouse-click combination no-completion during completing-read y-or-n-p when you type something other than 'y' or 'n' yes-or-no-p when you type something other than 'yes' or 'no' default used when nothing else is appropriate. Other lisp packages may use other beep types, but these are the ones that the C kernel of Emacs uses.Vsynchronous-sounds Play sounds synchronously, if non-nil. Only applies if NAS is used and supports asynchronous playing of sounds. Otherwise, sounds are always played synchronously.Vnative-sound-only-on-console Non-nil value means play sounds only if XEmacs is running on the system console. Nil means always always play sounds, even if running on a non-console tty or a secondary X display. This variable only applies to native sound support.Fvalid-specifier-type-p Given a SPECIFIER-TYPE, return non-nil if it is valid. Valid types are 'generic, 'integer, boolean, 'color, 'font, 'image, 'face-boolean, and 'toolbar. arguments: (SPECIFIER-TYPE) Fspecifier-type-list Return a list of valid specifier types. arguments: () Fmake-specifier Create a new specifier. A specifier is an object that can be used to keep track of a property whose value can be per-buffer, per-window, per-frame, or per-device, and can further be restricted to a particular console-type or device-class. Specifiers are used, for example, for the various built-in properties of a face; this allows a face to have different values in different frames, buffers, etc. For more information, see `specifier-instance', `specifier-specs', and `add-spec-to-specifier'; or, for a detailed description of specifiers, including how they are instantiated over a particular domain (i.e. how their value in that domain is determined), see the chapter on specifiers in the XEmacs Lisp Reference Manual. TYPE specifies the particular type of specifier, and should be one of the symbols 'generic, 'integer, 'boolean, 'color, 'font, 'image, 'face-boolean, or 'toolbar. For more information on particular types of specifiers, see the functions `generic-specifier-p', `integer-specifier-p', `boolean-specifier-p', `color-specifier-p', `font-specifier-p', `image-specifier-p', `face-boolean-specifier-p', and `toolbar-specifier-p'. arguments: (TYPE) Fspecifierp Return non-nil if OBJECT is a specifier. A specifier is an object that can be used to keep track of a property whose value can be per-buffer, per-window, per-frame, or per-device, and can further be restricted to a particular console-type or device-class. See `make-specifier'. arguments: (OBJECT) Fspecifier-type Return the type of SPECIFIER. arguments: (SPECIFIER) Fvalid-specifier-locale-p Return non-nil if LOCALE is a valid specifier locale. Valid locales are a device, a frame, a window, a buffer, and 'global. (nil is not valid.) arguments: (LOCALE) Fvalid-specifier-domain-p Return non-nil if DOMAIN is a valid specifier domain. A domain is used to instance a specifier (i.e. determine the specifier's value in that domain). Valid domains are a window, frame, or device. (nil is not valid.) arguments: (DOMAIN) Fvalid-specifier-locale-type-p Given a specifier LOCALE-TYPE, return non-nil if it is valid. Valid locale types are 'global, 'device, 'frame, 'window, and 'buffer. (Note, however, that in functions that accept either a locale or a locale type, 'global is considered an individual locale.) arguments: (LOCALE-TYPE) Fspecifier-locale-type-from-locale Given a specifier LOCALE, return its type. arguments: (LOCALE) Fvalid-specifier-tag-p Return non-nil if TAG is a valid specifier tag. See also `valid-specifier-tag-set-p'. arguments: (TAG) Fvalid-specifier-tag-set-p Return non-nil if TAG-SET is a valid specifier tag set. A specifier tag set is an entity that is attached to an instantiator and can be used to restrict the scope of that instantiator to a particular device class or device type and/or to mark instantiators added by a particular package so that they can be later removed. A specifier tag set consists of a list of zero of more specifier tags, each of which is a symbol that is recognized by XEmacs as a tag. (The valid device types and device classes are always tags, as are any tags defined by `define-specifier-tag'.) It is called a "tag set" (as opposed to a list) because the order of the tags or the number of times a particular tag occurs does not matter. Each tag has a predicate associated with it, which specifies whether that tag applies to a particular device. The tags which are device types and classes match devices of that type or class. User-defined tags can have any predicate, or none (meaning that all devices match). When attempting to instance a specifier, a particular instantiator is only considered if the device of the domain being instanced over matches all tags in the tag set attached to that instantiator. Most of the time, a tag set is not specified, and the instantiator gets a null tag set, which matches all devices. arguments: (TAG-SET) Fcanonicalize-tag-set Canonicalize the given tag set. Two canonicalized tag sets can be compared with `equal' to see if they represent the same tag set. (Specifically, canonicalizing involves sorting by symbol name and removing duplicates.) arguments: (TAG-SET) Fdevice-matches-specifier-tag-set-p Return non-nil if DEVICE matches specifier tag set TAG-SET. This means that DEVICE matches each tag in the tag set. (Every tag recognized by XEmacs has a predicate associated with it that specifies which devices match it.) arguments: (DEVICE TAG-SET) Fdefine-specifier-tag Define a new specifier tag. If PREDICATE is specified, it should be a function of one argument (a device) that specifies whether the tag matches that particular device. If PREDICATE is omitted, the tag matches all devices. You can redefine an existing user-defined specifier tag. However, you cannot redefine the built-in specifier tags (the device types and classes) or the symbols nil, t, 'all, or 'global. arguments: (TAG &optional PREDICATE) Fdevice-matching-specifier-tag-list Return a list of all specifier tags matching DEVICE. DEVICE defaults to the selected device if omitted. arguments: (&optional DEVICE) Fspecifier-tag-list Return a list of all currently-defined specifier tags. This includes the built-in ones (the device types and classes). arguments: () Fspecifier-tag-predicate Return the predicate for the given specifier tag. arguments: (TAG) Fcheck-valid-instantiator Signal an error if INSTANTIATOR is invalid for SPECIFIER-TYPE. arguments: (INSTANTIATOR SPECIFIER-TYPE) Fvalid-instantiator-p Return non-nil if INSTANTIATOR is valid for SPECIFIER-TYPE. arguments: (INSTANTIATOR SPECIFIER-TYPE) Fcheck-valid-inst-list Signal an error if INST-LIST is invalid for specifier type TYPE. arguments: (INST-LIST TYPE) Fvalid-inst-list-p Return non-nil if INST-LIST is valid for specifier type TYPE. arguments: (INST-LIST TYPE) Fcheck-valid-spec-list Signal an error if SPEC-LIST is invalid for specifier type TYPE. arguments: (SPEC-LIST TYPE) Fvalid-spec-list-p Return non-nil if SPEC-LIST is valid for specifier type TYPE. arguments: (SPEC-LIST TYPE) Fadd-spec-to-specifier Add a specification to SPECIFIER. The specification maps from LOCALE (which should be a buffer, window, frame, device, or 'global, and defaults to 'global) to INSTANTIATOR, whose allowed values depend on the type of the specifier. Optional argument TAG-SET limits the instantiator to apply only to the specified tag set, which should be a list of tags all of which must match the device being instantiated over (tags are a device type, a device class, or tags defined with `define-specifier-tag'). Specifying a single symbol for TAG-SET is equivalent to specifying a one-element list containing that symbol. Optional argument HOW-TO-ADD specifies what to do if there are already specifications in the specifier. It should be one of 'prepend Put at the beginning of the current list of instantiators for LOCALE. 'append Add to the end of the current list of instantiators for LOCALE. 'remove-tag-set-prepend (this is the default) Remove any existing instantiators whose tag set is the same as TAG-SET; then put the new instantiator at the beginning of the current list. ("Same tag set" means that they contain the same elements. The order may be different.) 'remove-tag-set-append Remove any existing instantiators whose tag set is the same as TAG-SET; then put the new instantiator at the end of the current list. 'remove-locale Remove all previous instantiators for this locale before adding the new spec. 'remove-locale-type Remove all specifications for all locales of the same type as LOCALE (this includes LOCALE itself) before adding the new spec. 'remove-all Remove all specifications from the specifier before adding the new spec. You can retrieve the specifications for a particular locale or locale type with the function `specifier-spec-list' or `specifier-specs'. arguments: (SPECIFIER INSTANTIATOR &optional LOCALE TAG-SET HOW-TO-ADD) Fadd-spec-list-to-specifier Add a spec-list (a list of specifications) to SPECIFIER. The format of a spec-list is ((LOCALE (TAG-SET . INSTANTIATOR) ...) ...) where LOCALE := a buffer, a window, a frame, a device, or 'global TAG-SET := an unordered list of zero or more TAGS, each of which is a symbol TAG := a device class (see `valid-device-class-p'), a device type (see `valid-console-type-p'), or a tag defined with `define-specifier-tag' INSTANTIATOR := format determined by the type of specifier The pair (TAG-SET . INSTANTIATOR) is called an `inst-pair'. A list of inst-pairs is called an `inst-list'. The pair (LOCALE . INST-LIST) is called a `specification' or `spec'. A spec-list, then, can be viewed as a list of specifications. HOW-TO-ADD specifies how to combine the new specifications with the existing ones, and has the same semantics as for `add-spec-to-specifier'. In many circumstances, the higher-level function `set-specifier' is more convenient and should be used instead. arguments: (SPECIFIER SPEC-LIST &optional HOW-TO-ADD) Fspecifier-spec-list Return the spec-list of specifications for SPECIFIER in LOCALE. If LOCALE is a particular locale (a buffer, window, frame, device, or 'global), a spec-list consisting of the specification for that locale will be returned. If LOCALE is a locale type (i.e. 'buffer, 'window, 'frame, or 'device), a spec-list of the specifications for all locales of that type will be returned. If LOCALE is nil or 'all, a spec-list of all specifications in SPECIFIER will be returned. LOCALE can also be a list of locales, locale types, and/or 'all; the result is as if `specifier-spec-list' were called on each element of the list and the results concatenated together. Only instantiators where TAG-SET (a list of zero or more tags) is a subset of (or possibly equal to) the instantiator's tag set are returned. (The default value of nil is a subset of all tag sets, so in this case no instantiators will be screened out.) If EXACT-P is non-nil, however, TAG-SET must be equal to an instantiator's tag set for the instantiator to be returned. arguments: (SPECIFIER &optional LOCALE TAG-SET EXACT-P) Fspecifier-specs Return the specification(s) for SPECIFIER in LOCALE. If LOCALE is a single locale or is a list of one element containing a single locale, then a "short form" of the instantiators for that locale will be returned. Otherwise, this function is identical to `specifier-spec-list'. The "short form" is designed for readability and not for ease of use in Lisp programs, and is as follows: 1. If there is only one instantiator, then an inst-pair (i.e. cons of tag and instantiator) will be returned; otherwise a list of inst-pairs will be returned. 2. For each inst-pair returned, if the instantiator's tag is 'any, the tag will be removed and the instantiator itself will be returned instead of the inst-pair. 3. If there is only one instantiator, its value is nil, and its tag is 'any, a one-element list containing nil will be returned rather than just nil, to distinguish this case from there being no instantiators at all. arguments: (SPECIFIER &optional LOCALE TAG-SET EXACT-P) Fremove-specifier Remove specification(s) for SPECIFIER. If LOCALE is a particular locale (a buffer, window, frame, device, or 'global), the specification for that locale will be removed. If instead, LOCALE is a locale type (i.e. 'buffer, 'window, 'frame, or 'device), the specifications for all locales of that type will be removed. If LOCALE is nil or 'all, all specifications will be removed. LOCALE can also be a list of locales, locale types, and/or 'all; this is equivalent to calling `remove-specifier' for each of the elements in the list. Only instantiators where TAG-SET (a list of zero or more tags) is a subset of (or possibly equal to) the instantiator's tag set are removed. The default value of nil is a subset of all tag sets, so in this case no instantiators will be screened out. If EXACT-P is non-nil, however, TAG-SET must be equal to an instantiator's tag set for the instantiator to be removed. arguments: (SPECIFIER &optional LOCALE TAG-SET EXACT-P) Fcopy-specifier Copy SPECIFIER to DEST, or create a new one if DEST is nil. If DEST is nil or omitted, a new specifier will be created and the specifications copied into it. Otherwise, the specifications will be copied into the existing specifier in DEST. If LOCALE is nil or 'all, all specifications will be copied. If LOCALE is a particular locale, the specification for that particular locale will be copied. If LOCALE is a locale type, the specifications for all locales of that type will be copied. LOCALE can also be a list of locales, locale types, and/or 'all; this is equivalent to calling `copy-specifier' for each of the elements of the list. See `specifier-spec-list' for more information about LOCALE. Only instantiators where TAG-SET (a list of zero or more tags) is a subset of (or possibly equal to) the instantiator's tag set are copied. The default value of nil is a subset of all tag sets, so in this case no instantiators will be screened out. If EXACT-P is non-nil, however, TAG-SET must be equal to an instantiator's tag set for the instantiator to be copied. Optional argument HOW-TO-ADD specifies what to do with existing specifications in DEST. If nil, then whichever locales or locale types are copied will first be completely erased in DEST. Otherwise, it is the same as in `add-spec-to-specifier'. arguments: (SPECIFIER &optional DEST LOCALE TAG-SET EXACT-P HOW-TO-ADD) Fcheck-valid-specifier-matchspec Signal an error if MATCHSPEC is invalid for SPECIFIER-TYPE. See `specifier-matching-instance' for a description of matchspecs. arguments: (MATCHSPEC SPECIFIER-TYPE) Fvalid-specifier-matchspec-p Return non-nil if MATCHSPEC is valid for SPECIFIER-TYPE. See `specifier-matching-instance' for a description of matchspecs. arguments: (MATCHSPEC SPECIFIER-TYPE) Fspecifier-fallback Return the fallback value for SPECIFIER. Fallback values are provided by the C code for certain built-in specifiers to make sure that instancing won't fail even if all specs are removed from the specifier, or to implement simple inheritance behavior (e.g. this method is used to ensure that faces other than 'default inherit their attributes from 'default). By design, you cannot change the fallback value, and specifiers created with `make-specifier' will never have a fallback (although a similar, Lisp-accessible capability may be provided in the future to allow for inheritance). The fallback value will be an inst-list that is instanced like any other inst-list, a specifier of the same type as SPECIFIER (results in inheritance), or nil for no fallback. When you instance a specifier, you can explicitly request that the fallback not be consulted. (The C code does this, for example, when merging faces.) See `specifier-instance'. arguments: (SPECIFIER) Fspecifier-instance Instantiate SPECIFIER (return its value) in DOMAIN. If no instance can be generated for this domain, return DEFAULT. DOMAIN should be a window, frame, or device. Other values that are legal as a locale (e.g. a buffer) are not valid as a domain because they do not provide enough information to identify a particular device (see `valid-specifier-domain-p'). DOMAIN defaults to the selected window if omitted. "Instantiating" a specifier in a particular domain means determining the specifier's "value" in that domain. This is accomplished by searching through the specifications in the specifier that correspond to all locales that can be derived from the given domain, from specific to general. In most cases, the domain is an Emacs window. In that case specifications are searched for as follows: 1. A specification whose locale is the window's buffer; 2. A specification whose locale is the window itself; 3. A specification whose locale is the window's frame; 4. A specification whose locale is the window's frame's device; 5. A specification whose locale is 'global. If all of those fail, then the C-code-provided fallback value for this specifier is consulted (see `specifier-fallback'). If it is an inst-list, then this function attempts to instantiate that list just as when a specification is located in the first five steps above. If the fallback is a specifier, `specifier-instance' is called recursively on this specifier and the return value used. Note, however, that if the optional argument NO-FALLBACK is non-nil, the fallback value will not be consulted. Note that there may be more than one specification matching a particular locale; all such specifications are considered before looking for any specifications for more general locales. Any particular specification that is found may be rejected because its tag set does not match the device being instantiated over, or because the specification is not valid for the device of the given domain (e.g. the font or color name does not exist for this particular X server). The returned value is dependent on the type of specifier. For example, for a font specifier (as returned by the `face-font' function), the returned value will be a font-instance object. For glyphs, the returned value will be a string, pixmap, or subwindow. See also `specifier-matching-instance'. arguments: (SPECIFIER &optional DOMAIN DEFAULT NO-FALLBACK) Fspecifier-matching-instance Return an instance for SPECIFIER in DOMAIN that matches MATCHSPEC. If no instance can be generated for this domain, return DEFAULT. This function is identical to `specifier-instance' except that a specification will only be considered if it matches MATCHSPEC. The definition of "match", and allowed values for MATCHSPEC, are dependent on the particular type of specifier. Here are some examples: -- For chartable (e.g. display table) specifiers, MATCHSPEC should be a character, and the specification (a chartable) must give a value for that character in order to be considered. This allows you to specify, e.g., a buffer-local display table that only gives values for particular characters. All other characters are handled as if the buffer-local display table is not there. (Chartable specifiers are not yet implemented.) -- For font specifiers, MATCHSPEC should be a charset, and the specification (a font string) must have a registry that matches the charset's registry. (This only makes sense with Mule support.) This makes it easy to choose a font that can display a particular character. (This is what redisplay does, in fact.) arguments: (SPECIFIER MATCHSPEC &optional DOMAIN DEFAULT NO-FALLBACK) Fspecifier-instance-from-inst-list Attempt to convert a particular inst-list into an instance. This attempts to instantiate INST-LIST in the given DOMAIN, as if INST-LIST existed in a specification in SPECIFIER. If the instantiation fails, DEFAULT is returned. In most circumstances, you should not use this function; use `specifier-instance' instead. arguments: (SPECIFIER DOMAIN INST-LIST &optional DEFAULT) Fspecifier-matching-instance-from-inst-list Attempt to convert a particular inst-list into an instance. This attempts to instantiate INST-LIST in the given DOMAIN (as if INST-LIST existed in a specification in SPECIFIER), matching the specifications against MATCHSPEC. This function is analogous to `specifier-instance-from-inst-list' but allows for specification-matching as in `specifier-matching-instance'. See that function for a description of exactly how the matching process works. arguments: (SPECIFIER MATCHSPEC DOMAIN INST-LIST &optional DEFAULT) Fset-specifier-dirty-flag Force recomputation of any caches associated with SPECIFIER. Note that this automatically happens whenever you change a specification in SPECIFIER; you do not have to call this function then. One example of where this function is useful is when you have a toolbar button whose `active-p' field is an expression to be evaluated. Calling `set-specifier-dirty-flag' on the toolbar specifier will force the `active-p' fields to be recomputed. arguments: (SPECIFIER) Fgeneric-specifier-p Return non-nil if OBJECT is a generic specifier. A generic specifier allows any kind of Lisp object as an instantiator, and returns back the Lisp object unchanged when it is instantiated. arguments: (OBJECT) Finteger-specifier-p Return non-nil if OBJECT is an integer specifier. arguments: (OBJECT) Fnatnum-specifier-p Return non-nil if OBJECT is a natnum (non-negative-integer) specifier. arguments: (OBJECT) Fboolean-specifier-p Return non-nil if OBJECT is a boolean specifier. arguments: (OBJECT) Fdisplay-table-specifier-p Return non-nil if OBJECT is a display-table specifier. arguments: (OBJECT) Fintern Return the canonical symbol whose name is STRING. If there is none, one is created by this function and returned. A second optional argument specifies the obarray to use; it defaults to the value of `obarray'. arguments: (STR &optional OBARRAY) Fintern-soft Return the canonical symbol whose name is STRING, or nil if none exists. A second optional argument specifies the obarray to use; it defaults to the value of `obarray'. arguments: (STR &optional OBARRAY) Funintern Delete the symbol named NAME, if any, from OBARRAY. The value is t if a symbol was found and deleted, nil otherwise. NAME may be a string or a symbol. If it is a symbol, that symbol is deleted, if it belongs to OBARRAY--no other symbol is deleted. OBARRAY defaults to the value of the variable `obarray' arguments: (NAME &optional OBARRAY) Fmapatoms Call FUNCTION on every symbol in OBARRAY. OBARRAY defaults to the value of `obarray'. arguments: (FUNCTION &optional OBARRAY) Fapropos-internal Show all symbols whose names contain match for REGEXP. If optional 2nd arg PRED is non-nil, (funcall PRED SYM) is done for each symbol and a symbol is mentioned only if that returns non-nil. Return list of symbols found. arguments: (STRING &optional PRED) Fboundp T if SYMBOL's value is not void. arguments: (SYM) Fglobally-boundp T if SYMBOL has a global (non-bound) value. This is for the byte-compiler; you really shouldn't be using this. arguments: (SYM) Ffboundp T if SYMBOL's function definition is not void. arguments: (SYM) Fmakunbound Make SYMBOL's value be void. arguments: (SYM) Ffmakunbound Make SYMBOL's function definition be void. arguments: (SYM) Fsymbol-function Return SYMBOL's function definition. Error if that is void. arguments: (SYMBOL) Fsymbol-plist Return SYMBOL's property list. arguments: (SYM) Fsymbol-name Return SYMBOL's name, a string. arguments: (SYM) Ffset Set SYMBOL's function definition to NEWDEF, and return NEWDEF. arguments: (SYM NEWDEF) Fdefine-function Set SYMBOL's function definition to NEWDEF, and return NEWDEF. Associates the function with the current load file, if any. arguments: (SYM NEWDEF) Fsetplist Set SYMBOL's property list to NEWPLIST, and return NEWPLIST. arguments: (SYM NEWPLIST) Fsymbol-value Return SYMBOL's value. Error if that is void. arguments: (SYM) Fset Set SYMBOL's value to NEWVAL, and return NEWVAL. arguments: (SYM NEWVAL) Fdefault-boundp Return T if SYMBOL has a non-void default value. This is the value that is seen in buffers that do not have their own values for this variable. arguments: (SYM) Fdefault-value Return SYMBOL's default value. This is the value that is seen in buffers that do not have their own values for this variable. The default value is meaningful for variables with local bindings in certain buffers. arguments: (SYM) Fset-default Set SYMBOL's default value to VAL. SYMBOL and VAL are evaluated. The default value is seen in buffers that do not have their own values for this variable. arguments: (SYM VALUE) Fsetq-default Set the default value of variable SYM to VALUE. SYM, the variable name, is literal (not evaluated); VALUE is an expression and it is evaluated. The default value of a variable is seen in buffers that do not have their own values for the variable. More generally, you can use multiple variables and values, as in (setq-default SYM VALUE SYM VALUE...) This sets each SYM's default value to the corresponding VALUE. The VALUE for the Nth SYM can refer to the new default values of previous SYMs.Fmake-variable-buffer-local Make VARIABLE have a separate value for each buffer. At any time, the value for the current buffer is in effect. There is also a default value which is seen in any buffer which has not yet set its own value. Using `set' or `setq' to set the variable causes it to have a separate value for the current buffer if it was previously using the default value. The function `default-value' gets the default value and `set-default' sets it. arguments: (VARIABLE) Fmake-local-variable Make VARIABLE have a separate value in the current buffer. Other buffers will continue to share a common default value. (The buffer-local value of VARIABLE starts out as the same value VARIABLE previously had. If VARIABLE was void, it remains void.) See also `make-variable-buffer-local'. If the variable is already arranged to become local when set, this function causes a local value to exist for this buffer, just as setting the variable would do. Do not use `make-local-variable' to make a hook variable buffer-local. Use `make-local-hook' instead. arguments: (VARIABLE) Fkill-local-variable Make VARIABLE no longer have a separate value in the current buffer. From now on the default value will apply in this buffer. arguments: (VARIABLE) Fkill-console-local-variable Make VARIABLE no longer have a separate value in the selected console. From now on the default value will apply in this console. arguments: (VARIABLE) Fsymbol-value-in-buffer Return the value of SYMBOL in BUFFER, or UNBOUND-VALUE if it is unbound. arguments: (SYMBOL BUFFER &optional UNBOUND-VALUE) Fsymbol-value-in-console Return the value of SYMBOL in CONSOLE, or UNBOUND-VALUE if it is unbound. arguments: (SYMBOL CONSOLE &optional UNBOUND-VALUE) Fbuilt-in-variable-type If SYM is a built-in variable, return info about this; else return nil. The returned info will be a symbol, one of `object' A simple built-in variable. `const-object' Same, but cannot be set. `integer' A built-in integer variable. `const-integer' Same, but cannot be set. `boolean' A built-in boolean variable. `const-boolean' Same, but cannot be set. `const-specifier' Always contains a specifier; e.g. `has-modeline-p'. `current-buffer' A built-in buffer-local variable. `const-current-buffer' Same, but cannot be set. `default-buffer' Forwards to the default value of a built-in buffer-local variable. `selected-console' A built-in console-local variable. `const-selected-console' Same, but cannot be set. `default-console' Forwards to the default value of a built-in console-local variable. arguments: (SYM) Flocal-variable-p Return t if SYMBOL's value is local to BUFFER. If optional third arg AFTER-SET is true, return t if SYMBOL would be buffer-local after it is set, regardless of whether it is so presently. A nil value for BUFFER is *not* the same as (current-buffer), but means "no buffer". Specifically: -- If BUFFER is nil and AFTER-SET is nil, a return value of t indicates that the variable is one of the special built-in variables that is always buffer-local. (This includes `buffer-file-name', `buffer-read-only', `buffer-undo-list', and others.) -- If BUFFER is nil and AFTER-SET is t, a return value of t indicates that the variable has had `make-variable-buffer-local' applied to it. arguments: (SYMBOL BUFFER &optional AFTER-SET) Fdontusethis-set-symbol-value-handler Don't you dare use this. If you do, suffer the wrath of Ben, who is likely to rename this function (or change the semantics of its arguments) without pity, thereby invalidating your code. arguments: (VARIABLE HANDLER-TYPE HANDLER &optional HARG KEEP-EXISTING) Fdefvaralias Define a variable as an alias for another variable. Thenceforth, any operations performed on VARIABLE will actually be performed on ALIAS. Both VARIABLE and ALIAS should be symbols. If ALIAS is nil, remove any aliases for VARIABLE. ALIAS can itself be aliased, and the chain of variable aliases will be followed appropriately. If VARIABLE already has a value, this value will be shadowed until the alias is removed, at which point it will be restored. Currently VARIABLE cannot be a built-in variable, a variable that has a buffer-local value in any buffer, or the symbols nil or t. (ALIAS, however, can be any type of variable.) arguments: (VARIABLE ALIAS) Fvariable-alias If VARIABLE is aliased to another variable, return that variable. VARIABLE should be a symbol. If VARIABLE is not aliased, return nil. Variable aliases are created with `defvaralias'. See also `indirect-variable'. arguments: (VARIABLE &optional FOLLOW-PAST-LISP-MAGIC) Findirect-variable Return the variable at the end of OBJECT's variable-alias chain. If OBJECT is a symbol, follow all variable aliases and return the final (non-aliased) symbol. Variable aliases are created with the function `defvaralias'. If OBJECT is not a symbol, just return it. Signal a cyclic-variable-indirection error if there is a loop in the variable chain of symbols. arguments: (OBJECT &optional FOLLOW-PAST-LISP-MAGIC) Vobarray Symbol table for use by `intern' and `read'. It is a vector whose length ought to be prime for best results. The vector's contents don't make sense if examined from Lisp programs; to find all the symbols in an obarray, use `mapatoms'.Fsyntax-table-p Return t if ARG is a syntax table. Any vector of 256 elements will do. arguments: (OBJ) Fsyntax-table Return the current syntax table. This is the one specified by the current buffer, or by BUFFER if it is non-nil. arguments: (&optional BUFFER) Fstandard-syntax-table Return the standard syntax table. This is the one used for new buffers. arguments: () Fcopy-syntax-table Construct a new syntax table and return it. It is a copy of the TABLE, which defaults to the standard syntax table. arguments: (&optional TABLE) Fset-syntax-table Select a new syntax table for BUFFER. One argument, a syntax table. BUFFER defaults to the current buffer if omitted. arguments: (TABLE &optional BUFFER) Fsyntax-designator-chars Return a string of the recognized syntax designator chars. The chars are ordered by their internal syntax codes, which are numbered starting at 0. arguments: () Fchar-syntax Return the syntax code of CHAR, described by a character. For example, if CHAR is a word constituent, the character `?w' is returned. The characters that correspond to various syntax codes are listed in the documentation of `modify-syntax-entry'. Optional second argument TABLE defaults to the current buffer's syntax table. arguments: (CH &optional TABLE) Fmatching-paren Return the matching parenthesis of CHAR, or nil if none. Optional second argument TABLE defaults to the current buffer's syntax table. arguments: (CH &optional TABLE) Fforward-word Move point forward ARG words (backward if ARG is negative). Normally returns t. If an edge of the buffer is reached, point is left there and nil is returned. arguments: (COUNT &optional BUFFER) Fforward-comment Move forward across up to N comments. If N is negative, move backward. Stop scanning if we find something other than a comment or whitespace. Set point to where scanning stops. If N comments are found as expected, with nothing except whitespace between them, return t; otherwise return nil. Point is set in either case. Optional argument BUFFER defaults to the current buffer. arguments: (N &optional BUFFER) Fscan-lists Scan from character number FROM by COUNT lists. Returns the character number of the position thus found. If DEPTH is nonzero, paren depth begins counting from that value, only places where the depth in parentheses becomes zero are candidates for stopping; COUNT such places are counted. Thus, a positive value for DEPTH means go out levels. Comments are ignored if `parse-sexp-ignore-comments' is non-nil. If the beginning or end of (the accessible part of) the buffer is reached and the depth is wrong, an error is signaled. If the depth is right but the count is not used up, nil is returned. If optional arg BUFFER is non-nil, scanning occurs in that buffer instead of in the current buffer. If optional arg NOERROR is non-nil, scan-lists will return nil instead of signalling an error. arguments: (FROM COUNT DEPTH &optional BUFFER NO-ERROR) Fscan-sexps Scan from character number FROM by COUNT balanced expressions. If COUNT is negative, scan backwards. Returns the character number of the position thus found. Comments are ignored if `parse-sexp-ignore-comments' is non-nil. If the beginning or end of (the accessible part of) the buffer is reached in the middle of a parenthetical grouping, an error is signaled. If the beginning or end is reached between groupings but before count is used up, nil is returned. If optional arg BUFFER is non-nil, scanning occurs in that buffer instead of in the current buffer. If optional arg NOERROR is non-nil, scan-sexps will return nil instead of signalling an error. arguments: (FROM COUNT &optional BUFFER NO-ERROR) Fbackward-prefix-chars Move point backward over any number of chars with prefix syntax. This includes chars with "quote" or "prefix" syntax (' or p). Optional arg BUFFER defaults to the current buffer. arguments: (&optional BUFFER) Fparse-partial-sexp Parse Lisp syntax starting at FROM until TO; return status of parse at TO. Parsing stops at TO or when certain criteria are met; point is set to where parsing stops. If fifth arg STATE is omitted or nil, parsing assumes that FROM is the beginning of a function. Value is a list of eight elements describing final state of parsing: 0. depth in parens. 1. character address of start of innermost containing list; nil if none. 2. character address of start of last complete sexp terminated. 3. non-nil if inside a string. (It is the character that will terminate the string.) 4. t if inside a comment. 5. t if following a quote character. 6. the minimum paren-depth encountered during this scan. 7. nil if in comment style a, or not in a comment; t if in comment style b If third arg TARGETDEPTH is non-nil, parsing stops if the depth in parentheses becomes equal to TARGETDEPTH. Fourth arg STOPBEFORE non-nil means stop when come to any character that starts a sexp. Fifth arg STATE is an eight-element list like what this function returns. It is used to initialize the state of the parse. Its second and third elements are ignored. Sixth arg COMMENTSTOP non-nil means stop at the start of a comment. arguments: (FROM TO &optional TARGETDEPTH STOPBEFORE OLDSTATE COMMENTSTOP BUFFER) Vparse-sexp-ignore-comments Non-nil means `forward-sexp', etc., should treat comments as whitespace.Vwords-include-escapes Non-nil means `forward-word', etc., should treat escape chars part of words.Fundo-boundary Mark a boundary between units of undo. An undo command will stop at this point, but another undo command will undo to the previous boundary. arguments: () Fprimitive-undo Undo COUNT records from the front of the list LIST. Return what remains of the list. arguments: (COUNT LIST) Fshow-balloon-help Show balloon help. arguments: (STRING) Fhide-balloon-help Hide balloon help. arguments: () Fballoon-help-move-to-pointer Move the balloon help to the place where the pointer currently resides. arguments: () Fx-debug-mode With a true arg, make the connection to the X server synchronous. With false, make it asynchronous. Synchronous connections are much slower, but are useful for debugging. (If you get X errors, make the connection synchronous, and use a debugger to set a breakpoint on `x_error_handler'. Your backtrace of the C stack will now be useful. In asynchronous mode, the stack above `x_error_handler' isn't helpful because of buffering.) If DEVICE is not specified, the selected device is assumed. Calling this function is the same as calling the C function `XSynchronize', or starting the program with the `-sync' command line argument. arguments: (ARG &optional DEVICE) Fx-get-resource Retrieve an X resource from the resource manager. The first arg is the name of the resource to retrieve, such as "font". The second arg is the class of the resource to retrieve, like "Font". The third arg should be one of the symbols 'string, 'integer, 'natnum, or 'boolean, specifying the type of object that the database is searched for. The fourth arg is the locale to search for the resources on, and can currently be a a buffer, a frame, a device, or 'global. If omitted, it defaults to 'global. The fifth arg is the device to search for the resources on. (The resource database for a particular device is constructed by combining non-device- specific resources such as any command-line resources specified and any app-defaults files found [or the fallback resources supplied by XEmacs, if no app-defaults file is found] with device-specific resources such as those supplied using xrdb.) If omitted, it defaults to the device of LOCALE, if a device can be derived (i.e. if LOCALE is a frame or device), and otherwise defaults to the value of `default-x-device'. The sixth arg NOERROR, if non-nil, means do not signal an error if a bogus resource specification was retrieved (e.g. if a non-integer was given when an integer was requested). In this case, a warning is issued instead. The resource names passed to this function are looked up relative to the locale. If you want to search for a subresource, you just need to specify the resource levels in NAME and CLASS. For example, NAME could be "modeline.attributeFont", and CLASS "Face.AttributeFont". Specifically, 1) If LOCALE is a buffer, a call (x-get-resource "foreground" "Foreground" 'string SOME-BUFFER) is an interface to a C call something like XrmGetResource (db, "xemacs.buffer.BUFFER-NAME.foreground", "Emacs.EmacsLocaleType.EmacsBuffer.Foreground", "String"); 2) If LOCALE is a frame, a call (x-get-resource "foreground" "Foreground" 'string SOME-FRAME) is an interface to a C call something like XrmGetResource (db, "xemacs.frame.FRAME-NAME.foreground", "Emacs.EmacsLocaleType.EmacsFrame.Foreground", "String"); 3) If LOCALE is a device, a call (x-get-resource "foreground" "Foreground" 'string SOME-DEVICE) is an interface to a C call something like XrmGetResource (db, "xemacs.device.DEVICE-NAME.foreground", "Emacs.EmacsLocaleType.EmacsDevice.Foreground", "String"); 4) If LOCALE is 'global, a call (x-get-resource "foreground" "Foreground" 'string 'global) is an interface to a C call something like XrmGetResource (db, "xemacs.foreground", "Emacs.Foreground", "String"); Note that for 'global, no prefix is added other than that of the application itself; thus, you can use this locale to retrieve arbitrary application resources, if you really want to. The returned value of this function is nil if the queried resource is not found. If the third arg is `string', a string is returned, and if it is `integer', an integer is returned. If the third arg is `boolean', then the returned value is the list (t) for true, (nil) for false, and is nil to mean ``unspecified.'' arguments: (NAME CLASS TYPE &optional LOCALE DEVICE NO-ERROR) Fx-get-resource-prefix Return the resource prefix for LOCALE on DEVICE. The resource prefix is the strings used to prefix resources if the LOCALE and DEVICE arguments were passed to `x-get-resource'. The returned value is a cons of a name prefix and a class prefix. For example, if LOCALE is a frame, the returned value might be ("xemacs.frame.FRAME-NAME" . "Emacs.EmacsLocaleType.EmacsFrame"). If no valid X device for resourcing can be obtained, this function returns nil. (In such a case, `x-get-resource' would always return nil.) arguments: (LOCALE &optional DEVICE) Fx-put-resource Add a resource to the resource database for DEVICE. RESOURCE-LINE specifies the resource to add and should be a standard resource specification. arguments: (RESOURCE-LINE &optional DEVICE) Fdefault-x-device Return the default X device for resourcing. This is the first-created X device that still exists. arguments: () Fx-display-visual-class Return the visual class of the X display `device' is on. The returned value will be one of the symbols `static-gray', `gray-scale', `static-color', `pseudo-color', `true-color', or `direct-color'. arguments: (&optional DEVICE) Fx-server-vendor Return the vendor ID string of the X server `device' on. arguments: (&optional DEVICE) Fx-server-version Return the version numbers of the X server `device' is on. The returned value is a list of three integers: the major and minor version numbers of the X Protocol in use, and the vendor-specific release number. See also `x-server-vendor'. arguments: (&optional DEVICE) Fx-valid-keysym-name-p Return true if KEYSYM names a keysym that the X library knows about. Valid keysyms are listed in the files /usr/include/X11/keysymdef.h and in /usr/lib/X11/XKeysymDB, or whatever the equivalents are on your system. arguments: (KEYSYM) Fx-keysym-hashtable Return a hashtable which contains a hash key for all keysyms which name keys on the keyboard. See `x-keysym-on-keyboard-p'. arguments: (&optional DEVICE) Fx-keysym-on-keyboard-sans-modifiers-p Return true if KEYSYM names a key on the keyboard of DEVICE. More precisely, return true if pressing a physical key on the keyboard of DEVICE without any modifier keys generates KEYSYM. Valid keysyms are listed in the files /usr/include/X11/keysymdef.h and in /usr/lib/X11/XKeysymDB, or whatever the equivalents are on your system. The keysym name can be provided in two forms: - if keysym is a string, it must be the name as known to X windows. - if keysym is a symbol, it must be the name as known to XEmacs. The two names differ in capitalization and underscoring. arguments: (KEYSYM &optional DEVICE) Fx-keysym-on-keyboard-p Return true if KEYSYM names a key on the keyboard of DEVICE. More precisely, return true if some keystroke (possibly including modifiers) on the keyboard of DEVICE keys generates KEYSYM. Valid keysyms are listed in the files /usr/include/X11/keysymdef.h and in /usr/lib/X11/XKeysymDB, or whatever the equivalents are on your system. The keysym name can be provided in two forms: - if keysym is a string, it must be the name as known to X windows. - if keysym is a symbol, it must be the name as known to XEmacs. The two names differ in capitalization and underscoring. arguments: (KEYSYM &optional DEVICE) Fx-grab-pointer Grab the pointer and restrict it to its current window. If optional DEVICE argument is nil, the default device will be used. If optional CURSOR argument is non-nil, change the pointer shape to that until `x-ungrab-pointer' is called (it should be an object returned by the `make-cursor-glyph' function). If the second optional argument IGNORE-KEYBOARD is non-nil, ignore all keyboard events during the grab. Returns t if the grab is successful, nil otherwise. arguments: (&optional DEVICE CURSOR IGNORE-KEYBOARD) Fx-ungrab-pointer Release a pointer grab made with `x-grab-pointer'. If optional first arg DEVICE is nil the default device is used. If it is t the pointer will be released on all X devices. arguments: (&optional DEVICE) Fx-grab-keyboard Grab the keyboard on the given device (defaulting to the selected one). So long as the keyboard is grabbed, all keyboard events will be delivered to emacs -- it is not possible for other X clients to eavesdrop on them. Ungrab the keyboard with `x-ungrab-keyboard' (use an unwind-protect). Returns t if the grab was successful; nil otherwise. arguments: (&optional DEVICE) Fx-ungrab-keyboard Release a keyboard grab made with `x-grab-keyboard'. arguments: (&optional DEVICE) Vx-emacs-application-class The X application class of the XEmacs process. This controls, among other things, the name of the `app-defaults' file that XEmacs will use. For changes to this variable to take effect, they must be made before the connection to the X server is initialized, that is, this variable may only be changed before emacs is dumped, or by setting it in the file lisp/term/x-win.el.Vx-initial-argv-list You don't want to know. This is used during startup to communicate the remaining arguments in `command-line-args-left' to the C code, which passes the args to the X initialization code, which removes some args, and then the args are placed back into `x-initial-arg-list' and thence into `command-line-args-left'. Perhaps `command-line-args-left' should just reside in C.Vx-seppuku-on-epipe When non-nil terminate XEmacs immediately on SIGPIPE from the X server. XEmacs doesn't terminate properly on some systems. When this variable is non-nil, XEmacs will commit immediate suicide when it gets a sigpipe from the X Server.Vmodifier-keys-are-sticky *Non-nil makes modifier keys sticky. This means that you can release the modifier key before pressing down the key that you wish to be modified. Although this is non-standard behavior, it is recommended because it reduces the strain on your hand, thus reducing the incidence of the dreaded Emacs-pinky syndrome.Vx-allow-sendevents *Non-nil means to allow synthetic events. Nil means they are ignored. Beware: allowing emacs to process SendEvents opens a big security hole.Vx-debug-events If non-zero, display debug information about X events that XEmacs sees. Information is displayed on stderr. Currently defined values are: 1 == non-verbose output 2 == verbose outputFcde-start-drag-internal Start a CDE drag from a buffer. arguments: (TEXT) Foffix-start-drag-internal First arg is the event that started the drag, second arg should be some string, and the third is the type of the data (this should be an int). The type defaults to DndText (4). Start a OffiX drag from a buffer. arguments: (EVENT DATA &optional DTYP) Fx-window-id Get the ID of the X11 window. This gives us a chance to manipulate the Emacs window from within a different program. Since the ID is an unsigned long, we return it as a string. arguments: (&optional FRAME) Vdefault-x-frame-plist Plist of default frame-creation properties for X frames. These override what is specified in the resource database and in `default-frame-plist', but are overridden by the arguments to the particular call to `make-frame'. Note: In many cases, properties of a frame are available as specifiers instead of through the frame-properties mechanism. Here is a list of recognized frame properties, other than those documented in `set-frame-properties' (they can be queried and set at any time, except as otherwise noted): window-id The X window ID corresponding to the frame. May be set only at startup, and only if external widget support was compiled in; doing so causes the frame to be created as an "external widget" in another program that uses an existing window in the program rather than creating a new one. initially-unmapped If non-nil, the frame will not be visible when it is created. In this case, you need to call `make-frame-visible' to make the frame appear. popup If non-nil, it should be a frame, and this frame will be created as a "popup" frame whose parent is the given frame. This will make the window manager treat the frame as a dialog box, which may entail doing different things (e.g. not asking for positioning, and not iconifying separate from its parent). inter-line-space Not currently implemented. toolbar-shadow-thickness Thickness of toolbar shadows. background-toolbar-color Color of toolbar background. bottom-toolbar-shadow-color Color of bottom shadows on toolbars. (*Not* specific to the bottom-toolbar.) top-toolbar-shadow-color Color of top shadows on toolbars. (*Not* specifier to the top-toolbar.) internal-border-width Width of internal border around text area. border-width Width of external border around text area. top Y position (in pixels) of the upper-left outermost corner of the frame (i.e. the upper-left of the window-manager decorations). left X position (in pixels) of the upper-left outermost corner of the frame (i.e. the upper-left of the window-manager decorations). border-color Color of external border around text area. cursor-color Color of text cursor. See also `default-frame-plist', which specifies properties which apply to all frames, not just X frames.Fmake-subwindow Creates a new `subwindow' object of size WIDTH x HEIGHT. The default is a window of size 1x1, which is also the minimum allowed window size. Subwindows are per-frame. A buffer being shown in two different frames will only display a subwindow glyph in the frame in which it was actually created. If two windows on the same frame are displaying the buffer then the most recently used window will actually display the window. If the frame is not specified, the selected frame is used. Subwindows are not currently implemented. arguments: (&optional WIDTH HEIGHT FRAME) Fchange-subwindow-property For the given SUBWINDOW, set PROPERTY to DATA, which is a string. Subwindows are not currently implemented. arguments: (SUBWINDOW PROPERTY DATA) Fsubwindowp Return non-nil if OBJECT is a subwindow. Subwindows are not currently implemented. arguments: (OBJECT) Fsubwindow-width Width of SUBWINDOW. Subwindows are not currently implemented. arguments: (SUBWINDOW) Fsubwindow-height Height of SUBWINDOW. Subwindows are not currently implemented. arguments: (SUBWINDOW) Fsubwindow-xid Return the xid of SUBWINDOW as a number. Subwindows are not currently implemented. arguments: (SUBWINDOW) Fresize-subwindow Resize SUBWINDOW to WIDTH x HEIGHT. If a value is nil that parameter is not changed. Subwindows are not currently implemented. arguments: (SUBWINDOW &optional WIDTH HEIGHT) Fforce-subwindow-map Generate a Map event for SUBWINDOW. Subwindows are not currently implemented. arguments: (SUBWINDOW) Vxpm-color-symbols Definitions of logical color-names used when reading XPM files. Elements of this list should be of the form (COLOR-NAME FORM-TO-EVALUATE). The COLOR-NAME should be a string, which is the name of the color to define; the FORM should evaluate to a `color' specifier object, or a string to be passed to `make-color-instance'. If a loaded XPM file references a symbolic color called COLOR-NAME, it will display as the computed color instead. The default value of this variable defines the logical color names "foreground" and "background" to be the colors of the `default' face.Vx-bitmap-file-path A list of the directories in which X bitmap files may be found. If nil, this is initialized from the "*bitmapFilePath" resource. This is used by the `make-image-instance' function (however, note that if the environment variable XBMLANGPATH is set, it is consulted first).Vx-handle-non-fully-specified-fonts If this is true then fonts which do not have all characters specified will be considered to be proportional width even if they are actually fixed-width. If this is not done then characters which are supposed to have 0 width may appear to actually have some width. Note: While setting this to t guarantees correct output in all circumstances, it also causes a noticeable performance hit when using fixed-width fonts. Since most people don't use characters which could cause problems this is set to nil by default.Fx-selection-reply-timeout-internal arguments: (ARG) Fx-own-selection-internal Assert an X selection of the given TYPE with the given VALUE. TYPE is a symbol, typically PRIMARY, SECONDARY, or CLIPBOARD. VALUE is typically a string, or a cons of two markers, but may be anything that the functions on selection-converter-alist know about. arguments: (SELECTION-NAME SELECTION-VALUE) Fx-get-selection-internal Return text selected from some X window. SELECTION_SYMBOL is a symbol, typically PRIMARY, SECONDARY, or CLIPBOARD. TARGET_TYPE is the type of data desired, typically STRING or COMPOUND_TEXT. Under Mule, if the resultant data comes back as 8-bit data in type TEXT or COMPOUND_TEXT, it will be decoded as Compound Text. arguments: (SELECTION-SYMBOL TARGET-TYPE) Fx-disown-selection-internal If we own the named selection, then disown it (make there be no selection). arguments: (SELECTION &optional TIMEVAL) Fx-selection-owner-p Whether the current emacs process owns the given X Selection. The arg should be the name of the selection in question, typically one of the symbols PRIMARY, SECONDARY, or CLIPBOARD. (For convenience, the symbol nil is the same as PRIMARY, and t is the same as SECONDARY.) arguments: (&optional SELECTION) Fx-selection-exists-p Whether there is an owner for the given X Selection. The arg should be the name of the selection in question, typically one of the symbols PRIMARY, SECONDARY, or CLIPBOARD. (For convenience, the symbol nil is the same as PRIMARY, and t is the same as SECONDARY.) arguments: (&optional SELECTION) Fx-get-cutbuffer-internal Return the value of the named CUTBUFFER (typically CUT_BUFFER0). arguments: (CUTBUFFER) Fx-store-cutbuffer-internal Set the value of the named CUTBUFFER (typically CUT_BUFFER0) to STRING. arguments: (CUTBUFFER STRING) Fx-rotate-cutbuffers-internal Rotate the values of the cutbuffers by the given number of steps; positive means move values forward, negative means backward. arguments: (N) Vselection-converter-alist An alist associating selection-types (such as STRING and TIMESTAMP) with functions. These functions will be called with three args: the name of the selection (typically PRIMARY, SECONDARY, or CLIPBOARD); a desired type to which the selection should be converted; and the local selection value (whatever had been passed to `x-own-selection'). These functions should return the value to send to the X server, which should be one of: -- nil (the conversion could not be done) -- a cons of a symbol and any of the following values; the symbol explicitly specifies the type that will be sent. -- a string (If the type is not specified, then if Mule support exists, the string will be converted to Compound Text and sent in the 'COMPOUND_TEXT format; otherwise (no Mule support), the string will be left as-is and sent in the 'STRING format. If the type is specified, the string will be left as-is (or converted to binary format under Mule). In all cases, 8-bit data it sent.) -- a character (With Mule support, will be converted to Compound Text whether or not a type is specified. If a type is not specified, a type of 'STRING or 'COMPOUND_TEXT will be sent, as for strings.) -- the symbol 'NULL (Indicates that there is no meaningful return value. Empty 32-bit data with a type of 'NULL will be sent.) -- a symbol (Will be converted into an atom. If the type is not specified, a type of 'ATOM will be sent.) -- an integer (Will be converted into a 16-bit or 32-bit integer depending on the value. If the type is not specified, a type of 'INTEGER will be sent.) -- a cons (HIGH . LOW) of integers (Will be converted into a 32-bit integer. If the type is not specified, a type of 'INTEGER will be sent.) -- a vector of symbols (Will be converted into a list of atoms. If the type is not specified, a type of 'ATOM will be sent.) -- a vector of integers (Will be converted into a list of 16-bit integers. If the type is not specified, a type of 'INTEGER will be sent.) -- a vector of integers and/or conses (HIGH . LOW) of integers (Will be converted into a list of 16-bit integers. If the type is not specified, a type of 'INTEGER will be sent.)Vx-lost-selection-hooks A function or functions to be called after the X server has notified us that we have lost the selection. The function(s) will be called with one argument, a symbol naming the selection (typically PRIMARY, SECONDARY, or CLIPBOARD).Vx-sent-selection-hooks A function or functions to be called after we have responded to some other client's request for the value of a selection that we own. The function(s) will be called with four arguments: - the name of the selection (typically PRIMARY, SECONDARY, or CLIPBOARD); - the name of the selection-type which we were requested to convert the selection into before sending (for example, STRING or LENGTH); - and whether we successfully transmitted the selection. We might have failed (and declined the request) for any number of reasons, including being asked for a selection that we no longer own, or being asked to convert into a type that we don't know about or that is inappropriate. This hook doesn't let you change the behavior of emacs's selection replies, it merely informs you that they have happened.Vx-selection-timeout If the selection owner doesn't reply in this many seconds, we give up. A value of 0 means wait as long as necessary. This is initialized from the "*selectionTimeout" resource (which is expressed in milliseconds).Fwidget-plist-member Like `plist-get', but returns the tail of PLIST whose car is PROP. arguments: (PLIST PROP) Fwidget-put In WIDGET set PROPERTY to VALUE. The value can later be retrived with `widget-get'. arguments: (WIDGET PROPERTY VALUE) Fwidget-get In WIDGET, get the value of PROPERTY. The value could either be specified when the widget was created, or later with `widget-put'. arguments: (WIDGET PROPERTY) Fwidget-apply Apply the value of WIDGET's PROPERTY to the widget itself. ARGS are passed as extra arguments to the function.Fwindowp Return t if OBJ is a window. arguments: (OBJ) Fwindow-live-p Return t if OBJ is a window which is currently visible. arguments: (OBJ) Fselected-window Return the window that the cursor now appears in and commands apply to. If the optional argument CON-DEV-OR-FRAME is specified and is a frame, return the selected window used by that frame. If CON-DEV-OR-FRAME is a device, then the selected frame on that device will be used. If CON-DEV-OR-FRAME is a console, the selected frame on that console's selected device will be used. Otherwise, the selected frame is used. arguments: (&optional CON-DEV-OR-FRAME) Fminibuffer-window Return the window used now for minibuffers. If the optional argument CON-DEV-OR-FRAME is specified and is a frame, return the minibuffer window used by that frame. If CON-DEV-OR-FRAME is a device, then the selected frame on that device will be used. If CON-DEV-OR-FRAME is a console, the selected frame on that console's selected device will be used. Otherwise, the selected frame is used. arguments: (&optional CON-DEV-OR-FRAME) Fwindow-minibuffer-p Return non-nil if WINDOW is a minibuffer window. arguments: (WINDOW) Fwindow-first-hchild Return the first horizontal child of WINDOW, or nil. arguments: (WINDOW) Fwindow-first-vchild Return the first vertical child of WINDOW, or nil. arguments: (WINDOW) Fwindow-next-child Return the next window on the same level as WINDOW, or nil. arguments: (WINDOW) Fwindow-previous-child Return the previous window on the same level as WINDOW, or nil. arguments: (WINDOW) Fwindow-parent Return the parent of WINDOW, or nil. arguments: (WINDOW) Fwindow-lowest-p Return non-nil if WINDOW is along the bottom of its frame. arguments: (WINDOW) Fwindow-highest-p Return non-nil if WINDOW is along the top of its frame. arguments: (WINDOW) Fwindow-leftmost-p Return non-nil if WINDOW is along the left edge of its frame. arguments: (WINDOW) Fwindow-rightmost-p Return non-nil if WINDOW is along the right edge of its frame. arguments: (WINDOW) Fpos-visible-in-window-p Return t if position POS is currently on the frame in WINDOW. Returns nil if that position is scrolled vertically out of view. POS defaults to point in WINDOW's buffer; WINDOW, to the selected window. arguments: (&optional POS WINDOW) Fwindow-buffer Return the buffer that WINDOW is displaying. arguments: (&optional WINDOW) Fwindow-frame Return the frame that window WINDOW is on. arguments: (&optional WINDOW) Fwindow-height Return the number of default lines in WINDOW. This actually works by dividing the window's pixel height (including the modeline and horizontal scrollbar, if any) by the height of the default font; therefore, the number of displayed lines will probably be different. Use `window-height' to get consistent results in geometry calculations. Use `window-displayed-height' to get the actual number of lines currently displayed in a window. arguments: (&optional WINDOW) Fwindow-displayed-height Return the number of lines currently displayed in WINDOW. This counts the actual number of lines displayed in WINDOW (as opposed to `window-height'). The modeline and horizontal scrollbar do not count as lines. If there is some blank space between the end of the buffer and the end of the window, this function pretends that there are lines of text in the default font there. arguments: (&optional WINDOW) Fwindow-pixel-height Return the height of WINDOW in pixels. Defaults to current window. This includes the window's modeline and horizontal scrollbar (if any). arguments: (&optional WINDOW) Fwindow-width Return the number of display columns in WINDOW. This is the width that is usable columns available for text in WINDOW. arguments: (&optional WINDOW) Fwindow-pixel-width Return the width of WINDOW in pixels. Defaults to current window. arguments: (&optional WINDOW) Fwindow-hscroll Return the number of columns by which WINDOW is scrolled from left margin. arguments: (&optional WINDOW) Fset-window-hscroll Set number of columns WINDOW is scrolled from left margin to NCOL. NCOL should be zero or positive. arguments: (WINDOW NCOL) Fwindow-pixel-edges Return a list of the pixel edge coordinates of WINDOW. (LEFT TOP RIGHT BOTTOM), all relative to 0, 0 at top left corner of frame. The frame toolbars and menubars are considered to be outside of this area. arguments: (&optional WINDOW) Fwindow-point Return current value of point in WINDOW. For a nonselected window, this is the value point would have if that window were selected. Note that, when WINDOW is the selected window and its buffer is also currently selected, the value returned is the same as (point). It would be more strictly correct to return the `top-level' value of point, outside of any save-excursion forms. But that is hard to define. arguments: (&optional WINDOW) Fwindow-start Return position at which display currently starts in WINDOW. This is updated by redisplay or by calling `set-window-start'. arguments: (&optional WINDOW) Fwindow-end Return position at which display currently ends in WINDOW. This is updated by redisplay, when it runs to completion. Simply changing the buffer text or setting `window-start' does not update this value. If GUARANTEE is non-nil, then the return value is guaranteed to be the value of window-end at the end of the next full redisplay assuming nothing else changes in the meantime. This function is potentially much slower with this flag set. arguments: (&optional WINDOW GUARANTEE) Fset-window-point Make point value in WINDOW be at position POS in WINDOW's buffer. arguments: (WINDOW POS) Fset-window-start Make display in WINDOW start at position POS in WINDOW's buffer. Optional third arg NOFORCE non-nil inhibits next redisplay from overriding motion of point in order to display at this exact start. arguments: (WINDOW POS &optional NOFORCE) Fwindow-dedicated-p Return WINDOW's dedicated object, usually t or nil. See also `set-window-dedicated-p'. arguments: (WINDOW) Fset-window-dedicated-p Control whether WINDOW is dedicated to the buffer it displays. If it is dedicated, Emacs will not automatically change which buffer appears in it. The second argument is the new value for the dedication flag; non-nil means yes. arguments: (WINDOW ARG) Fdelete-window Remove WINDOW from the display. Default is selected window. If window is the only one on the frame, the frame is destroyed. Normally, you cannot delete the last non-minibuffer-only frame (you must use `save-buffers-kill-emacs' or `kill-emacs'). However, if optional second argument FORCE is non-nil, you can delete the last frame. (This will automatically call `save-buffers-kill-emacs'.) arguments: (&optional WINDOW FORCE) Fnext-window Return next window after WINDOW in canonical ordering of windows. If omitted, WINDOW defaults to the selected window. Optional second arg MINIBUF t means count the minibuffer window even if not active. MINIBUF nil or omitted means count the minibuffer iff it is active. MINIBUF neither t nor nil means not to count the minibuffer even if it is active. Several frames may share a single minibuffer; if the minibuffer counts, all windows on all frames that share that minibuffer count too. Therefore, `next-window' can be used to iterate through the set of windows even when the minibuffer is on another frame. If the minibuffer does not count, only windows from WINDOW's frame count. Optional third arg ALL-FRAMES t means include windows on all frames. ALL-FRAMES nil or omitted means cycle within the frames as specified above. ALL-FRAMES = `visible' means include windows on all visible frames. ALL-FRAMES = 0 means include windows on all visible and iconified frames. If ALL-FRAMES is a frame, restrict search to windows on that frame. Anything else means restrict to WINDOW's frame. Optional fourth argument CONSOLE controls which consoles or devices the returned window may be on. If CONSOLE is a console, return windows only on that console. If CONSOLE is a device, return windows only on that device. If CONSOLE is a console type, return windows only on consoles of that type. If CONSOLE is 'window-system, return any windows on any window-system consoles. If CONSOLE is nil or omitted, return windows only on WINDOW's console. Otherwise, all windows are considered. If you use consistent values for MINIBUF, ALL-FRAMES, and CONSOLE, you can use `next-window' to iterate through the entire cycle of acceptable windows, eventually ending up back at the window you started with. `previous-window' traverses the same cycle, in the reverse order. arguments: (&optional WINDOW MINIBUF ALL-FRAMES CONSOLE) Fprevious-window Return the window preceding WINDOW in canonical ordering of windows. If omitted, WINDOW defaults to the selected window. Optional second arg MINIBUF t means count the minibuffer window even if not active. MINIBUF nil or omitted means count the minibuffer iff it is active. MINIBUF neither t nor nil means not to count the minibuffer even if it is active. Several frames may share a single minibuffer; if the minibuffer counts, all windows on all frames that share that minibuffer count too. Therefore, `previous-window' can be used to iterate through the set of windows even when the minibuffer is on another frame. If the minibuffer does not count, only windows from WINDOW's frame count If optional third arg ALL-FRAMES t means include windows on all frames. ALL-FRAMES nil or omitted means cycle within the frames as specified above. ALL-FRAMES = `visible' means include windows on all visible frames. ALL-FRAMES = 0 means include windows on all visible and iconified frames. If ALL-FRAMES is a frame, restrict search to windows on that frame. Anything else means restrict to WINDOW's frame. Optional fourth argument CONSOLE controls which consoles or devices the returned window may be on. If CONSOLE is a console, return windows only on that console. If CONSOLE is a device, return windows only on that device. If CONSOLE is a console type, return windows only on consoles of that type. If CONSOLE is 'window-system, return any windows on any window-system consoles. If CONSOLE is nil or omitted, return windows only on WINDOW's console. Otherwise, all windows are considered. If you use consistent values for MINIBUF, ALL-FRAMES, and CONSOLE, you can use `previous-window' to iterate through the entire cycle of acceptable windows, eventually ending up back at the window you started with. `next-window' traverses the same cycle, in the reverse order. arguments: (&optional WINDOW MINIBUF ALL-FRAMES CONSOLE) Fnext-vertical-window Return the next window which is vertically after WINDOW. arguments: (&optional WINDOW) Fother-window Select the N'th different window on this frame. All windows on current frame are arranged in a cyclic order. This command selects the window N steps away in that order. A negative N moves in the opposite order. If optional argument FRAME is `visible', search all visible frames. If FRAME is 0, search all visible and iconified frames. If FRAME is t, search all frames. If FRAME is nil, search only the selected frame. If FRAME is a frame, search only that frame. Optional third argument CONSOLE controls which consoles or devices the returned window may be on. If CONSOLE is a console, return windows only on that console. If CONSOLE is a device, return windows only on that device. If CONSOLE is a console type, return windows only on consoles of that type. If CONSOLE is 'window-system, return any windows on any window-system consoles. If CONSOLE is nil or omitted, return windows only on FRAME'S console, or on the selected console if FRAME is not a frame. Otherwise, all windows are considered. arguments: (N &optional FRAME CONSOLE) Fget-lru-window Return the window least recently selected or used for display. If optional argument FRAME is `visible', search all visible frames. If FRAME is 0, search all visible and iconified frames. If FRAME is t, search all frames. If FRAME is nil, search only the selected frame. If FRAME is a frame, search only that frame. Optional second argument CONSOLE controls which consoles or devices the returned window may be on. If CONSOLE is a console, return windows only on that console. If CONSOLE is a device, return windows only on that device. If CONSOLE is a console type, return windows only on consoles of that type. If CONSOLE is 'window-system, return any windows on any window-system consoles. If CONSOLE is nil or omitted, return windows only on FRAME'S console, or on the selected console if FRAME is not a frame. Otherwise, all windows are considered. arguments: (&optional FRAME CONSOLE) Fget-largest-window Return the window largest in area. If optional argument FRAME is `visible', search all visible frames. If FRAME is 0, search all visible and iconified frames. If FRAME is t, search all frames. If FRAME is nil, search only the selected frame. If FRAME is a frame, search only that frame. Optional second argument CONSOLE controls which consoles or devices the returned window may be on. If CONSOLE is a console, return windows only on that console. If CONSOLE is a device, return windows only on that device. If CONSOLE is a console type, return windows only on consoles of that type. If CONSOLE is 'window-system, return any windows on any window-system consoles. If CONSOLE is nil or omitted, return windows only on FRAME'S console, or on the selected console if FRAME is not a frame. Otherwise, all windows are considered. arguments: (&optional FRAME CONSOLE) Fget-buffer-window Return a window currently displaying BUFFER, or nil if none. If optional argument FRAME is `visible', search all visible frames. If optional argument FRAME is 0, search all visible and iconified frames. If FRAME is t, search all frames. If FRAME is nil, search only the selected frame. If FRAME is a frame, search only that frame. Optional third argument CONSOLE controls which consoles or devices the returned window may be on. If CONSOLE is a console, return windows only on that console. If CONSOLE is a device, return windows only on that device. If CONSOLE is a console type, return windows only on consoles of that type. If CONSOLE is 'window-system, return any windows on any window-system consoles. If CONSOLE is nil or omitted, return windows only on FRAME'S console, or on the selected console if FRAME is not a frame. Otherwise, all windows are considered. arguments: (BUFFER &optional FRAME CONSOLE) Fwindow-left-margin-pixel-width Return the width in pixels of the left outside margin of window WINDOW. If WINDOW is nil, the selected window is assumed. arguments: (&optional WINDOW) Fwindow-right-margin-pixel-width Return the width in pixels of the right outside margin of window WINDOW. If WINDOW is nil, the selected window is assumed. arguments: (&optional WINDOW) Fdelete-other-windows Make WINDOW (or the selected window) fill its frame. Only the frame WINDOW is on is affected. This function tries to reduce display jumps by keeping the text previously visible in WINDOW in the same place on the frame. Doing this depends on the value of (window-start WINDOW), so if calling this function in a program gives strange scrolling, make sure the window-start value is reasonable when this function is called. arguments: (&optional WINDOW) Fdelete-windows-on Delete all windows showing BUFFER. Optional second argument FRAME controls which frames are affected. If nil or omitted, delete all windows showing BUFFER in any frame. If t, delete only windows showing BUFFER in the selected frame. If `visible', delete all windows showing BUFFER in any visible frame. If a frame, delete only windows showing BUFFER in that frame. Optional third argument CONSOLE controls which consoles or devices the returned window may be on. If CONSOLE is a console, return windows only on that console. If CONSOLE is a device, return windows only on that device. If CONSOLE is a console type, return windows only on consoles of that type. If CONSOLE is 'window-system, return any windows on any window-system consoles. If CONSOLE is nil or omitted, return windows only on FRAME'S console, or on the selected console if FRAME is not a frame. Otherwise, all windows are considered. arguments: (BUFFER &optional FRAME CONSOLE) Freplace-buffer-in-windows Replace BUFFER with some other buffer in all windows showing it. arguments: (BUFFER) Fset-window-buffer Make WINDOW display BUFFER as its contents. BUFFER can be a buffer or buffer name. arguments: (WINDOW BUFFER) Fselect-window Select WINDOW. Most editing will apply to WINDOW's buffer. The main editor command loop selects the buffer of the selected window before each command. arguments: (WINDOW) Fsplit-window Split WINDOW, putting SIZE lines in the first of the pair. WINDOW defaults to selected one and SIZE to half its size. If optional third arg HOR-FLAG is non-nil, split side by side and put SIZE columns in the first of the pair. arguments: (&optional WINDOW CHSIZE HORFLAG) Fenlarge-window Make the selected window ARG lines bigger. From program, optional second arg non-nil means grow sideways ARG columns, and optional third ARG specifies the window to change instead of the selected window. arguments: (N &optional SIDE WINDOW) Fshrink-window Make the selected window ARG lines smaller. From program, optional second arg non-nil means shrink sideways ARG columns, and optional third ARG specifies the window to change instead of the selected window. arguments: (N &optional SIDE WINDOW) Fscroll-up Scroll text of current window upward ARG lines; or near full screen if no ARG. A near full screen is `next-screen-context-lines' less than a full screen. Negative ARG means scroll downward. When calling from a program, supply a number as argument or nil. If `signal-error-on-buffer-boundary' is nil, the usual error and loss of zmacs region is suppressed when moving past end of buffer. arguments: (&optional N) Fscroll-down Scroll text of current window downward ARG lines; or near full screen if no ARG. A near full screen is `next-screen-context-lines' less than a full screen. Negative ARG means scroll upward. When calling from a program, supply a number as argument or nil. If `signal-error-on-buffer-boundary' is nil, the usual error and loss of zmacs region is suppressed when moving past end of buffer. arguments: (&optional N) Fother-window-for-scrolling Return the other window for "other window scroll" commands. If in the minibuffer, `minibuffer-scroll-window' if non-nil specifies the window. If `other-window-scroll-buffer' is non-nil, a window showing that buffer is used. arguments: () Fscroll-other-window Scroll next window upward ARG lines; or near full frame if no ARG. The next window is the one below the current one; or the one at the top if the current one is at the bottom. Negative ARG means scroll downward. When calling from a program, supply a number as argument or nil. If in the minibuffer, `minibuf-scroll-window' if non-nil specifies the window to scroll. If `other-window-scroll-buffer' is non-nil, scroll the window showing that buffer, popping the buffer up if necessary. arguments: (&optional N) Fscroll-left Scroll selected window display ARG columns left. Default for ARG is window width minus 2. arguments: (&optional ARG) Fscroll-right Scroll selected window display ARG columns right. Default for ARG is window width minus 2. arguments: (&optional ARG) Frecenter Center point in WINDOW and redisplay frame. With N, put point on line N. The desired position of point is always relative to the window. Just C-u as prefix means put point in the center of the window. No N (i.e., it is nil) erases the entire frame and then redraws with point in the center of the window. If WINDOW is nil, the selected window is used. arguments: (&optional N WINDOW) Fmove-to-window-line Position point relative to WINDOW. With no argument, position text at center of window. An argument specifies window line; zero means top of window, negative means relative to bottom of window. If WINDOW is nil, the selected window is used. arguments: (ARG &optional WINDOW) Fwindow-memory-usage Return stats about the memory usage of window WINDOW. The values returned are in the form an alist of usage types and byte counts. The byte counts attempt to encompass all the memory used by the window (separate from the memory logically associated with a buffer or frame), including internal structures and any malloc() overhead associated with them. In practice, the byte counts are underestimated because certain memory usage is very hard to determine (e.g. the amount of memory used inside the Xt library or inside the X server) and because there is other stuff that might logically be associated with a window, buffer, or frame (e.g. window configurations, glyphs) but should not obviously be included in the usage counts. Multiple slices of the total memory usage may be returned, separated by a nil. Each slice represents a particular view of the memory, a particular way of partitioning it into groups. Within a slice, there is no overlap between the groups of memory, and each slice collectively represents all the memory concerned. arguments: (WINDOW) Fwindow-configuration-p T if OBJECT is a window-configuration object. arguments: (OBJ) Fset-window-configuration Set the configuration of windows and buffers as specified by CONFIGURATION. CONFIGURATION must be a value previously returned by `current-window-configuration' (which see). arguments: (CONFIGURATION) Fcurrent-window-configuration Return an object representing the current window configuration of FRAME. If FRAME is nil or omitted, use the selected frame. This describes the number of windows, their sizes and current buffers, and for each displayed buffer, where display starts, and the positions of point and mark. An exception is made for point in the current buffer: its value is -not- saved. arguments: (&optional FRAME) Fsave-window-excursion Execute body, preserving window sizes and contents. Restores which buffer appears in which window, where display starts, as well as the current buffer. Does not restore the value of point in current buffer.Vscroll-on-clipped-lines *Non-nil means to scroll if point lands on a line which is clipped.Vtemp-buffer-show-hook See `temp-buffer-show-function'.Vtemp-buffer-show-function Non-nil means call as function to display a help buffer. The function is called with one argument, the buffer to be displayed. Used by `with-output-to-temp-buffer'. If this function is used, then it must do the entire job of showing the buffer; `temp-buffer-show-hook' is not run unless this function runs it.Vminibuffer-scroll-window Non-nil means it is the window that \<minibuffer-local-map>\[scroll-other-window] in minibuffer should scroll.Vother-window-scroll-buffer If non-nil, this is a buffer and \[scroll-other-window] should scroll its window.Vnext-screen-context-lines *Number of lines of continuity when scrolling by screenfuls.Vwindow-min-height *Delete any window less than this tall (including its modeline).Vwindow-min-width *Delete any window less than this wide.Vmodeline-shadow-thickness *How thick to draw 3D shadows around modelines. If this is set to 0, modelines will be the traditional 2D. Sizes above 10 will be accepted but the maximum thickness that will be drawn is 10. This is a specifier; use `set-specifier' to change it.Vhas-modeline-p *Whether the modeline should be displayed. This is a specifier; use `set-specifier' to change it.Fmmap-allocator-status Return some information about mmap-based allocator. mmap-addrlist-size: number of entries in address picking list. mmap-times-mapped: number of times r_alloc was called. mmap-pages-mapped: number of pages mapped by r_alloc calls only. mmap-times-unmapped: number of times r_free was called. mmap-times-remapped: number of times r_re_alloc was called. mmap-didnt-copy: number of times re-alloc didn't have to move the block. mmap-pages-copied: total number of pages copied. mmap-average-bumpval: average increase in size demanded to re-alloc. mmap-wastage: total number of bytes allocated, but not currently in use. mmap-live-pages: total number of pages live. arguments: () Vmmap-hysteresis Extra room left at the end of an allocated arena, so that a re-alloc requesting extra space smaller than this does not actually cause a new arena to be allocated. A negative value is considered equal to zero. This is the minimum amount of space guaranteed to be left at the end of the arena. Because allocation happens in multiples of the OS page size, it is possible for more space to be left unused. Fbackquote Expand the internal representation of a backquoted TEMPLATE into a lisp form. The backquote character is like the quote character in that it prevents the template which follows it from being evaluated, except that backquote permits you to evaluate portions of the quoted template. A comma character inside TEMPLATE indicates that the following item should be evaluated. A comma character may be followed by an at-sign, which indicates that the form which follows should be evaluated and inserted and "spliced" into the template. Forms following ,@ must evaluate to lists. Here is how to use backquotes: (setq p 'b q '(c d e)) `(a ,p ,@q) -> (a b c d e) `(a . b) -> (a . b) `(a . ,p) -> (a . b) The XEmacs lisp reader expands lisp backquotes as it reads them. Examples: `atom is read as (backquote atom) `(a ,b ,@(c d e)) is read as (backquote (a (\, b) (\,\@ (c d e)))) `(a . ,p) is read as (backquote (a \, p)) (backquote TEMPLATE) is a macro that produces code to construct TEMPLATE. Note that this is very slow in interpreted code, but fast if you compile. TEMPLATE is one or more nested lists or vectors, which are `almost quoted'. They are copied recursively, with elements preceded by comma evaluated. (backquote (a b)) == (list 'a 'b) (backquote (a [b c])) == (list 'a (vector 'b 'c)) However, certain special lists are not copied. They specify substitution. Lists that look like (\, EXP) are evaluated and the result is substituted. (backquote (a (\, (+ x 5)))) == (list 'a (+ x 5)) Elements of the form (\,\@ EXP) are evaluated and then all the elements of the result are substituted. This result must be a list; it may be `nil'. Elements of the form (\,\. EXP) are evaluated and then all the elements of the result are concatenated to the list of preceding elements in the list. They must occur as the last element of a list (not a vector). EXP may evaluate to nil. As an example, a simple macro `push' could be written: (defmacro push (v l) `(setq ,l (cons ,@(list v l)))) or as (defmacro push (v l) `(setq ,l (cons ,v ,l))) For backwards compatibility, old-style emacs-lisp backquotes are still read. OLD STYLE NEW STYLE (` (foo (, bar) (,@ bing))) `(foo ,bar ,@bing) Because of the old-style backquote support, you cannot use a new-style backquoted form as the first element of a list. Perhaps some day this restriction will go away, but for now you should be wary of it: (`(this ,will ,@fail)) ((` (but (, this) will (,@ work)))) This is an extremely rare thing to need to do in lisp. Fbq-list* Returns a list of its arguments with last cons a dotted pair. Fproclaim-inline Cause the named functions to be open-coded when called from compiled code. They will only be compiled open-coded when byte-optimize is true. Fproclaim-notinline Cause the named functions to no longer be open-coded. Fdefsubst Define an inline function. The syntax is just like that of `defun'. Fmake-obsolete Make the byte-compiler warn that FUNCTION is obsolete. The warning will say that NEW should be used instead. If NEW is a string, that is the `use instead' message. Fmake-obsolete-variable Make the byte-compiler warn that VARIABLE is obsolete, and NEW should be used instead. If NEW is a string, then that is the `use instead' message. Fmake-compatible Make the byte-compiler know that FUNCTION is provided for compatibility. The warning will say that NEW should be used instead. If NEW is a string, that is the `use instead' message. Fmake-compatible-variable Make the byte-compiler know that VARIABLE is provided for compatibility. and NEW should be used instead. If NEW is a string, then that is the `use instead' message. Fdont-compile Like `progn', but the body always runs interpreted (not compiled). If you think you need this, you're probably making a mistake somewhere. Feval-when-compile Like `progn', but evaluates the body at compile time. The result of the body appears to the compiler as a quoted constant. Feval-and-compile Like `progn', but evaluates the body at compile time and at load time. Feval-when-feature Run the body forms when FEATURE is featurep, be it now or later. Called (eval-when-feature (FEATURE [. FILENAME]) BODYFORMS...). If (featurep 'FEATURE), evals now; otherwise adds an elt to `after-load-alist' (which see), using FEATURE as filename if FILENAME is nil. Fbyte-compiler-options Set some compilation-parameters for this file. This will affect only the file in which it appears; this does nothing when evaluated, or when loaded from a .el file. Each argument to this macro must be a list of a key and a value. Keys: Values: Corresponding variable: verbose t, nil byte-compile-verbose optimize t, nil, source, byte byte-optimize warnings list of warnings byte-compile-warnings file-format emacs19, emacs20 byte-compile-emacs19-compatibility The value specified with the `warnings' option must be a list, containing some subset of the following flags: free-vars references to variables not in the current lexical scope. unused-vars references to non-global variables bound but not referenced. unresolved calls to unknown functions. callargs lambda calls with args that don't match the definition. redefine function cell redefined from a macro to a lambda or vice versa, or redefined to take a different number of arguments. If the first element if the list is `+' or `-' then the specified elements are added to or removed from the current set of warnings, instead of the entire set of warnings being overwritten. For example, something like this might appear at the top of a source file: (byte-compiler-options (optimize t) (warnings (- callargs)) ; Don't warn about arglist mismatch (warnings (+ unused-vars)) ; Do warn about unused bindings (file-format emacs19)) Vautoload-file-name Filename that autoloads are expected to be found in. Vpackages-hardcoded-lisp Lisp packages that are always dumped with XEmacs Vpackages-useful-lisp Lisp packages that need early byte compilation. Vpackages-unbytecompiled-lisp Lisp packages that should not be byte compiled. Flambda Return a lambda expression. A call of the form (lambda ARGS DOCSTRING INTERACTIVE BODY) is self-quoting; the result of evaluating the lambda expression is the expression itself. The lambda expression may then be treated as a function, i.e., stored as the function value of a symbol, passed to funcall or mapcar, etc. ARGS should take the same form as an argument list for a `defun'. DOCSTRING is an optional documentation string. If present, it should describe how to call the function. But documentation strings are usually not useful in nameless functions. INTERACTIVE should be a call to the function `interactive', which see. It may also be omitted. BODY should be a list of lisp expressions. Flocate-library Show the precise file name of Emacs library LIBRARY. This command searches the directories in `load-path' like `M-x load-library' to find the file that `M-x load-library RET LIBRARY RET' would load. Optional second arg NOSUFFIX non-nil means don't add suffixes `.elc' or `.el' to the specified name LIBRARY. If the optional third arg PATH is specified, that list of directories is used instead of `load-path'. Flist-autoloads-path List autoloads from precomputed load-path. Flist-autoloads List autoload files in (what will be) the normal lisp search path. This function is used during build to find where the global symbol files so they can be perused for their useful information. Fpackages-find-packages-1 Search the supplied directory for associated directories. The top level is assumed to look like: info/ Contain texinfo files for lisp installed in this hierarchy etc/ Contain data files for lisp installled in this hiearchy lisp/ Contain directories which either have straight lisp code or are self-contained packages of their own. This is an internal function. Do not call it after startup. Fpackages-find-packages Search the supplied path for additional info/etc/lisp directories. Lisp directories if configured prior to build time will have equivalent status as bundled packages. If the argument `path-only' is non-nil, only the `load-path' will be set, otherwise data directories and info directories will be added. If the optional argument `suppress-user' is non-nil, package directories rooted in a user login directory (like ~/.xemacs) will not be searched. This is used at dump time to suppress the builder's local environment. Flocate-data-directory Locate a directory in a search path DIR-LIST (a list of directories). If no DIR-LIST is supplied, it defaults to `data-directory-list'. Flocate-data-file Locate a file in a search path DIR-LIST (a list of directories). If no DIR-LIST is supplied, it defaults to `data-directory-list'. Fdefun-when-void Define a function, just like `defun', unless it's already defined. Used for compatibility among different emacs variants. Fdefine-function-when-void Define a function, just like `define-function', unless it's already defined. Used for compatibility among different emacs variants. Flistify-key-sequence Convert a key sequence to a list of events. Flocal-variable-if-set-p Return t if SYM would be local to BUFFER after it is set. A nil value for BUFFER is *not* the same as (current-buffer), but can be used to determine whether `make-variable-buffer-local' has been called on SYM. Fmake-local-hook Make the hook HOOK local to the current buffer. When a hook is local, its local and global values work in concert: running the hook actually runs all the hook functions listed in *either* the local value *or* the global value of the hook variable. This function works by making `t' a member of the buffer-local value, which acts as a flag to run the hook functions in the default value as well. This works for all normal hooks, but does not work for most non-normal hooks yet. We will be changing the callers of non-normal hooks so that they can handle localness; this has to be done one by one. This function does nothing if HOOK is already local in the current buffer. Do not use `make-local-variable' to make a hook variable buffer-local. Fadd-hook Add to the value of HOOK the function FUNCTION. FUNCTION is not added if already present. FUNCTION is added (if necessary) at the beginning of the hook list unless the optional argument APPEND is non-nil, in which case FUNCTION is added at the end. The optional fourth argument, LOCAL, if non-nil, says to modify the hook's buffer-local value rather than its default value. This makes no difference if the hook is not buffer-local. To make a hook variable buffer-local, always use `make-local-hook', not `make-local-variable'. HOOK should be a symbol, and FUNCTION may be any valid function. If HOOK is void, it is first set to nil. If HOOK's value is a single function, it is changed to a list of functions. Fremove-hook Remove from the value of HOOK the function FUNCTION. HOOK should be a symbol, and FUNCTION may be any valid function. If FUNCTION isn't the value of HOOK, or, if FUNCTION doesn't appear in the list of hooks to run in HOOK, then nothing is done. See `add-hook'. The optional third argument, LOCAL, if non-nil, says to modify the hook's buffer-local value rather than its default value. This makes no difference if the hook is not buffer-local. To make a hook variable buffer-local, always use `make-local-hook', not `make-local-variable'. Fadd-to-list Add to the value of LIST-VAR the element ELEMENT if it isn't there yet. The test for presence of ELEMENT is done with `equal'. If you want to use `add-to-list' on a variable that is not defined until a certain package is loaded, you should put the call to `add-to-list' into a hook function that will be run only after loading the package. `eval-after-load' provides one way to do this. In some cases other hooks, such as major mode hooks, can do the job. Vkill-buffer-hook Function or functions to be called when a buffer is killed. The value of this variable may be buffer-local. The buffer about to be killed is current when this hook is run. Vkill-emacs-hook Function or functions to be called when `kill-emacs' is called, just before emacs is actually killed. Freplace-in-string Replaces all matches in STR for REGEXP with NEWTEXT string, and returns the new string. Optional LITERAL non-nil means do a literal replacement. Otherwise treat \ in NEWTEXT string as special: \& means substitute original matched text, \N means substitute match for (...) number N, \\ means insert one \. Fsplit-string Return a list of substrings of STRING which are separated by PATTERN. If PATTERN is omitted, it defaults to "[ \f\t\n\r\v]+". Fwith-output-to-string Collect output to `standard-output' while evaluating FORMS and return it as a string. Fwith-current-buffer Execute the forms in BODY with BUFFER as the current buffer. The value returned is the value of the last form in BODY. See also `with-temp-buffer'. Fwith-temp-file Create a new buffer, evaluate FORMS there, and write the buffer to FILE. The value of the last form in FORMS is returned, like `progn'. See also `with-temp-buffer'. Fwith-temp-buffer Create a temporary buffer, and evaluate FORMS there like `progn'. See also `with-temp-file' and `with-output-to-string'. Fwith-string-as-buffer-contents With the contents of the current buffer being STR, run BODY. Returns the new contents of the buffer, as modified by BODY. The original current buffer is restored afterwards. Finsert-face Insert STRING and highlight with FACE. Returns the extent created. Fplist-to-alist Convert property list PLIST into the equivalent association-list form. The alist is returned. This converts from (a 1 b 2 c 3) into ((a . 1) (b . 2) (c . 3)) The original plist is not modified. See also `destructive-plist-to-alist'. Fdestructive-plist-to-alist Convert property list PLIST into the equivalent association-list form. The alist is returned. This converts from (a 1 b 2 c 3) into ((a . 1) (b . 2) (c . 3)) The original plist is destroyed in the process of constructing the alist. See also `plist-to-alist'. Falist-to-plist Convert association list ALIST into the equivalent property-list form. The plist is returned. This converts from ((a . 1) (b . 2) (c . 3)) into (a 1 b 2 c 3) The original alist is not modified. See also `destructive-alist-to-plist'. Fputf Add property PROP to plist PLIST with value VAL. Analogous to (setq PLIST (plist-put PLIST PROP VAL)). Flaxputf Add property PROP to lax plist LAX-PLIST with value VAL. Analogous to (setq LAX-PLIST (lax-plist-put LAX-PLIST PROP VAL)). Flaxremf Remove property PROP from lax plist LAX-PLIST. Analogous to (setq LAX-PLIST (lax-plist-remprop LAX-PLIST PROP)). Ferror Signal an error, making error message by passing all args to `format'. This error is not continuable: you cannot continue execution after the error using the debugger `r' command. See also `cerror'. Fcerror Like `error' but signals a continuable error. Fcheck-argument-type Check that ARGUMENT satisfies PREDICATE. If not, signal a continuable `wrong-type-argument' error until the returned value satisfies PREDICATE, and assign the returned value to ARGUMENT. Fsignal-error Signal a non-continuable error. Args are ERROR-SYMBOL, and associated DATA. An error symbol is a symbol defined using `define-error'. DATA should be a list. Its elements are printed as part of the error message. If the signal is handled, DATA is made available to the handler. See also `signal', and the functions to handle errors: `condition-case' and `call-with-condition-handler'. Fdefine-error Define a new error, denoted by ERROR-SYM. DOC-STRING is an informative message explaining the error, and will be printed out when an unhandled error occurs. ERROR-SYM is a sub-error of INHERITS-FROM (which defaults to `error'). [`define-error' internally works by putting on ERROR-SYM an `error-message' property whose value is DOC-STRING, and an `error-conditions' property that is a list of ERROR-SYM followed by each of its super-errors, up to and including `error'. You will sometimes see code that sets this up directly rather than calling `define-error', but you should *not* do this yourself.] Fbuffer-substring-no-properties Return the text from BEG to END, without text properties, as a string. Fget-buffer-window-list Return windows currently displaying BUFFER, or nil if none. See `walk-windows' for the meaning of MINIBUF and FRAME. Fignore Do nothing and return nil. This function accepts any number of arguments, but ignores them. Ffunctionp Non-nil if OBJECT can be called as a function. Feval-after-load Arrange that, if FILE is ever loaded, FORM will be run at that time. This makes or adds to an entry on `after-load-alist'. If FILE is already loaded, evaluate FORM right now. It does nothing if FORM is already on the list for FILE. FILE should be the name of a library, with no directory name. Feval-next-after-load Read the following input sexp, and run it whenever FILE is loaded. This makes or adds to an entry on `after-load-alist'. FILE should be the name of a library, with no directory name. Vcase-replace *Non-nil means `query-replace' should preserve case in replacements. What this means is that `query-replace' will change the case of the replacement text so that it matches the text that was replaced. If this variable is nil, the replacement text will be inserted exactly as it was specified by the user, irrespective of the case of the text that was replaced. Note that this flag has no effect if `case-fold-search' is nil, or if the replacement text has any uppercase letters in it. Vquery-replace-interactive Non-nil means `query-replace' uses the last search string. That becomes the "string to replace". Fquery-replace Replace some occurrences of FROM-STRING with TO-STRING. As each match is found, the user must type a character saying what to do with it. For directions, type \[help-command] at that time. If `query-replace-interactive' is non-nil, the last incremental search string is used as FROM-STRING--you don't have to specify it with the minibuffer. Preserves case in each replacement if `case-replace' and `case-fold-search' are non-nil and FROM-STRING has no uppercase letters. (Preserving case means that if the string matched is all caps, or capitalized, then its replacement is upcased or capitalized.) Third arg DELIMITED (prefix arg if interactive), if non-nil, means replace only matches surrounded by word boundaries. To customize possible responses, change the "bindings" in `query-replace-map'. Fquery-replace-regexp Replace some things after point matching REGEXP with TO-STRING. As each match is found, the user must type a character saying what to do with it. For directions, type \[help-command] at that time. If `query-replace-interactive' is non-nil, the last incremental search regexp is used as REGEXP--you don't have to specify it with the minibuffer. Preserves case in each replacement if `case-replace' and `case-fold-search' are non-nil and REGEXP has no uppercase letters. Third arg DELIMITED (prefix arg if interactive), if non-nil, means replace only matches surrounded by word boundaries. In TO-STRING, `\&' stands for whatever matched the whole of REGEXP, and `\=\N' (where N is a digit) stands for whatever what matched the Nth `\(...\)' in REGEXP. Fmap-query-replace-regexp Replace some matches for REGEXP with various strings, in rotation. The second argument TO-STRINGS contains the replacement strings, separated by spaces. This command works like `query-replace-regexp' except that each successive replacement uses the next successive replacement string, wrapping around from the last such string to the first. Non-interactively, TO-STRINGS may be a list of replacement strings. If `query-replace-interactive' is non-nil, the last incremental search regexp is used as REGEXP--you don't have to specify it with the minibuffer. A prefix argument N says to use each replacement string N times before rotating to the next. Freplace-string Replace occurrences of FROM-STRING with TO-STRING. Preserve case in each match if `case-replace' and `case-fold-search' are non-nil and FROM-STRING has no uppercase letters. (Preserving case means that if the string matched is all caps, or capitalized, then its replacement is upcased or capitalized.) Third arg DELIMITED (prefix arg if interactive), if non-nil, means replace only matches surrounded by word boundaries. If `query-replace-interactive' is non-nil, the last incremental search string is used as FROM-STRING--you don't have to specify it with the minibuffer. This function is usually the wrong thing to use in a Lisp program. What you probably want is a loop like this: (while (search-forward FROM-STRING nil t) (replace-match TO-STRING nil t)) which will run faster and will not set the mark or print anything. Freplace-regexp Replace things after point matching REGEXP with TO-STRING. Preserve case in each match if `case-replace' and `case-fold-search' are non-nil and REGEXP has no uppercase letters. (Preserving case means that if the string matched is all caps, or capitalized, then its replacement is upcased or capitalized.) Third arg DELIMITED (prefix arg if interactive), if non-nil, means replace only matches surrounded by word boundaries. In TO-STRING, `\&' stands for whatever matched the whole of REGEXP, and `\=\N' (where N is a digit) stands for whatever what matched the Nth `\(...\)' in REGEXP. If `query-replace-interactive' is non-nil, the last incremental search regexp is used as REGEXP--you don't have to specify it with the minibuffer. This function is usually the wrong thing to use in a Lisp program. What you probably want is a loop like this: (while (re-search-forward REGEXP nil t) (replace-match TO-STRING nil nil)) which will run faster and will not set the mark or print anything. Vregexp-history History list for some commands that read regular expressions. Fdelete-non-matching-lines Delete all lines except those containing matches for REGEXP. A match split across lines preserves all the lines it lies in. Applies to all lines after point. Fdelete-matching-lines Delete lines containing matches for REGEXP. If a match is split across lines, all the lines it lies in are deleted. Applies to lines after point. Fcount-matches Print number of matches for REGEXP following point. Foccur-mode Major mode for output from \[occur]. \<occur-mode-map>Move point to one of the items in this buffer, then use \[occur-mode-goto-occurrence] to go to the occurrence that the item refers to. Alternatively, click \[occur-mode-mouse-goto] on an item to go to it. \{occur-mode-map} Foccur-mode-mouse-goto Go to the occurrence highlighted by mouse. This function is only reasonable when bound to a mouse key in the occur buffer Foccur-mode-goto-occurrence Go to the occurrence the current line describes. Vlist-matching-lines-default-context-lines *Default number of context lines to include around a `list-matching-lines' match. A negative number means to include that many lines before the match. A positive number means to include that many lines both before and after. Vlist-matching-lines-whole-buffer If t, occur operates on whole buffer, otherwise occur starts from point. default is t. Flist-matching-lines Show all lines in the current buffer containing a match for REGEXP. If a match spreads across multiple lines, all those lines are shown. If variable `list-matching-lines-whole-buffer' is non-nil, the entire buffer is searched, otherwise search begins at point. Each line is displayed with NLINES lines before and after, or -NLINES before if NLINES is negative. NLINES defaults to `list-matching-lines-default-context-lines'. Interactively it is the prefix arg. The lines are shown in a buffer named `*Occur*'. It serves as a menu to find any of the occurrences in this buffer. \[describe-mode] in that buffer will explain how. Vquery-replace-help Help message while in query-replace Vquery-replace-map Keymap that defines the responses to questions in `query-replace'. The "bindings" in this map are not commands; they are answers. The valid answers include `act', `skip', `act-and-show', `exit', `act-and-exit', `edit', `delete-and-edit', `recenter', `automatic', `backup', `exit-prefix', and `help'. Fperform-replace Subroutine of `query-replace'. Its complexity handles interactive queries. Don't use this in your own program unless you want to query and set the mark just as `query-replace' does. Instead, write a simple loop like this: (while (re-search-forward "foo[ ]+bar" nil t) (replace-match "foobar" nil nil)) which will run faster and probably do exactly what you want. Vquery-replace-highlight *Non-nil means to highlight words during query replacement. Fmatch-string Return string of text matched by last search. NUM specifies which parenthesized expression in the last regexp. Value is nil if NUMth pair didn't match, or there were less than NUM pairs. Zero means the entire text matched by the whole regexp or whole string. STRING should be given if the last search was by `string-match' on STRING. Fsave-match-data Execute BODY forms, restoring the global value of the match data. Vcustom-print-functions This is a list of functions that format user objects for printing. Each function is called in turn with three arguments: the object, the stream, and the print level (currently ignored). If it is able to print the object it returns true; otherwise it returns nil and the printer proceeds to the next function on the list. This variable is not used at present, but it is defined in hopes that a future Emacs interpreter will be able to use it. Feql T if the two args are the same Lisp object. Floating-point numbers of equal value are `eql', but they may not be `eq'. Fincf (incf PLACE [X]): increment PLACE by X (1 by default). PLACE may be a symbol, or any generalized variable allowed by `setf'. The return value is the incremented value of PLACE. Fdecf (decf PLACE [X]): decrement PLACE by X (1 by default). PLACE may be a symbol, or any generalized variable allowed by `setf'. The return value is the decremented value of PLACE. Fpop (pop PLACE): remove and return the head of the list stored in PLACE. Analogous to (prog1 (car PLACE) (setf PLACE (cdr PLACE))), though more careful about evaluating each argument only once and in the right order. PLACE may be a symbol, or any generalized variable allowed by `setf'. Fpush (push X PLACE): insert X at the head of the list stored in PLACE. Analogous to (setf PLACE (cons X PLACE)), though more careful about evaluating each argument only once and in the right order. PLACE may be a symbol, or any generalized variable allowed by `setf'. Fpushnew (pushnew X PLACE): insert X at the head of the list if not already there. Like (push X PLACE), except that the list is unmodified if X is `eql' to an element already on the list. Keywords supported: :test :test-not :key Fwhen (when COND BODY...): if COND yields non-nil, do BODY, else return nil. Funless (unless COND BODY...): if COND yields nil, do BODY, else return nil. Fcl-macroexpand Return result of expanding macros at top level of FORM. If FORM is not a macro call, it is returned unchanged. Otherwise, the macro is expanded and the expansion is considered in place of FORM. When a non-macro-call results, it is returned. The second optional arg ENVIRONMENT species an environment of macro definitions to shadow the loaded ones for use in file byte-compilation. Ffloatp-safe T if OBJECT is a floating point number. On Emacs versions that lack floating-point support, this function always returns nil. Fplusp T if NUMBER is positive. Fminusp T if NUMBER is negative. Foddp T if INTEGER is odd. Fevenp T if INTEGER is even. Fcl-abs Return the absolute value of ARG. Fmapcar* Apply FUNCTION to each element of SEQ, and make a list of the results. If there are several SEQs, FUNCTION is called with that many arguments, and mapping stops as soon as the shortest list runs out. With just one SEQ, this is like `mapcar'. With several, it is like the Common Lisp `mapcar' function extended to arbitrary sequence types. Fsecond Return the second element of the list LIST. Fthird Return the third element of the list LIST. Ffourth Return the fourth element of the list LIST. Ffifth Return the fifth element of the list LIST. Fsixth Return the sixth element of the list LIST. Fseventh Return the seventh element of the list LIST. Feighth Return the eighth element of the list LIST. Fninth Return the ninth element of the list LIST. Ftenth Return the tenth element of the list LIST. Fcaar Return the `car' of the `car' of X. Fcadr Return the `car' of the `cdr' of X. Fcdar Return the `cdr' of the `car' of X. Fcddr Return the `cdr' of the `cdr' of X. Fcaaar Return the `car' of the `car' of the `car' of X. Fcaadr Return the `car' of the `car' of the `cdr' of X. Fcadar Return the `car' of the `cdr' of the `car' of X. Fcaddr Return the `car' of the `cdr' of the `cdr' of X. Fcdaar Return the `cdr' of the `car' of the `car' of X. Fcdadr Return the `cdr' of the `car' of the `cdr' of X. Fcddar Return the `cdr' of the `cdr' of the `car' of X. Fcdddr Return the `cdr' of the `cdr' of the `cdr' of X. Fcaaaar Return the `car' of the `car' of the `car' of the `car' of X. Fcaaadr Return the `car' of the `car' of the `car' of the `cdr' of X. Fcaadar Return the `car' of the `car' of the `cdr' of the `car' of X. Fcaaddr Return the `car' of the `car' of the `cdr' of the `cdr' of X. Fcadaar Return the `car' of the `cdr' of the `car' of the `car' of X. Fcadadr Return the `car' of the `cdr' of the `car' of the `cdr' of X. Fcaddar Return the `car' of the `cdr' of the `cdr' of the `car' of X. Fcadddr Return the `car' of the `cdr' of the `cdr' of the `cdr' of X. Fcdaaar Return the `cdr' of the `car' of the `car' of the `car' of X. Fcdaadr Return the `cdr' of the `car' of the `car' of the `cdr' of X. Fcdadar Return the `cdr' of the `car' of the `cdr' of the `car' of X. Fcdaddr Return the `cdr' of the `car' of the `cdr' of the `cdr' of X. Fcddaar Return the `cdr' of the `cdr' of the `car' of the `car' of X. Fcddadr Return the `cdr' of the `cdr' of the `car' of the `cdr' of X. Fcdddar Return the `cdr' of the `cdr' of the `cdr' of the `car' of X. Fcddddr Return the `cdr' of the `cdr' of the `cdr' of the `cdr' of X. Flast Returns the last link in the list LIST. With optional argument N, returns Nth-to-last link (default 1). Fbutlast Returns a copy of LIST with the last N elements removed. Fnbutlast Modifies LIST to remove the last N elements. Flist* Return a new list with specified args as elements, cons'd to last arg. Thus, `(list* A B C D)' is equivalent to `(nconc (list A B C) D)', or to `(cons A (cons B (cons C D)))'. Fldiff Return a copy of LIST with the tail SUBLIST removed. Fcopy-list Return a copy of a list, which may be a dotted list. The elements of the list are not copied, just the list structure itself. Fadjoin Return ITEM consed onto the front of LIST only if it's not already there. Otherwise, return LIST unmodified. Keywords supported: :test :test-not :key Fsubst Substitute NEW for OLD everywhere in TREE (non-destructively). Return a copy of TREE with all elements `eql' to OLD replaced by NEW. Keywords supported: :test :test-not :key Fcl-add-hook Add to hook variable HOOK the function FUNC. FUNC is not added if it already appears on the list stored in HOOK. Fcoerce Coerce OBJECT to type TYPE. TYPE is a Common Lisp type specifier. Fequalp T if two Lisp objects have similar structures and contents. This is like `equal', except that it accepts numerically equal numbers of different types (float vs. integer), and also compares strings case-insensitively. Fmap Map a function across one or more sequences, returning a sequence. TYPE is the sequence type to return, FUNC is the function, and SEQS are the argument sequences. Fmaplist Map FUNC to each sublist of LIST or LISTS. Like `mapcar', except applies to lists and their cdr's rather than to the elements themselves. Fmapl Like `maplist', but does not accumulate values returned by the function. Fmapcan Like `mapcar', but nconc's together the values returned by the function. Fmapcon Like `maplist', but nconc's together the values returned by the function. Fsome Return true if PREDICATE is true of any element of SEQ or SEQs. If so, return the true (non-nil) value returned by PREDICATE. Fevery Return true if PREDICATE is true of every element of SEQ or SEQs. Fnotany Return true if PREDICATE is false of every element of SEQ or SEQs. Fnotevery Return true if PREDICATE is false of some element of SEQ or SEQs. Fgcd Return the greatest common divisor of the arguments. Flcm Return the least common multiple of the arguments. Fisqrt Return the integer square root of the argument. Fcl-expt Return X raised to the power of Y. Works only for integer arguments. Ffloor* Return a list of the floor of X and the fractional part of X. With two arguments, return floor and remainder of their quotient. Fceiling* Return a list of the ceiling of X and the fractional part of X. With two arguments, return ceiling and remainder of their quotient. Ftruncate* Return a list of the integer part of X and the fractional part of X. With two arguments, return truncation and remainder of their quotient. Fround* Return a list of X rounded to the nearest integer and the remainder. With two arguments, return rounding and remainder of their quotient. Fmod* The remainder of X divided by Y, with the same sign as Y. Frem* The remainder of X divided by Y, with the same sign as X. Fsignum Return 1 if A is positive, -1 if negative, 0 if zero. Frandom* Return a random nonnegative number less than LIM, an integer or float. Optional second arg STATE is a random-state object. Fmake-random-state Return a copy of random-state STATE, or of `*random-state*' if omitted. If STATE is t, return a new state object seeded from the time of day. Frandom-state-p Return t if OBJECT is a random-state object. Fconcatenate Concatenate, into a sequence of type TYPE, the argument SEQUENCES. Frevappend Equivalent to (append (reverse X) Y). Fnreconc Equivalent to (nconc (nreverse X) Y). Flist-length Return the length of a list. Return nil if list is circular. Ftailp Return true if SUBLIST is a tail of LIST. Fcl-copy-tree Make a copy of TREE. If TREE is a cons cell, this recursively copies both its car and its cdr. Contrast to copy-sequence, which copies only along the cdrs. With second argument VECP, this copies vectors as well as conses. Fget* Return the value of SYMBOL's PROPNAME property, or DEFAULT if none. Fgetf Search PROPLIST for property PROPNAME; return its value or DEFAULT. PROPLIST is a list of the sort returned by `symbol-plist'. Fcl-remprop Remove from SYMBOL's plist the property PROP and its value. Fmake-hash-table Make an empty Common Lisp-style hash-table. If :test is `eq', `eql', or `equal', this can use XEmacs built-in hash-tables. In Emacs 19, or with a different test, this internally uses a-lists. Keywords supported: :test :size The Common Lisp keywords :rehash-size and :rehash-threshold are ignored. Fhash-table-p Return t if OBJECT is a hash table. Fcl-gethash Look up KEY in HASH-TABLE; return corresponding value, or DEFAULT. Fcl-remhash Remove KEY from HASH-TABLE. Fcl-clrhash Clear HASH-TABLE. Fcl-maphash Call FUNCTION on keys and values from HASH-TABLE. Fhash-table-count Return the number of entries in HASH-TABLE. Fcl-prettyprint Insert a pretty-printed rendition of a Lisp FORM in current buffer. Fcl-macroexpand-all Expand all macro calls through a Lisp FORM. This also does some trivial optimizations to make the form prettier. Freduce Reduce two-argument FUNCTION across SEQUENCE. Keywords supported: :start :end :from-end :initial-value :key Ffill Fill the elements of SEQ with ITEM. Keywords supported: :start :end Freplace Replace the elements of SEQ1 with the elements of SEQ2. SEQ1 is destructively modified, then returned. Keywords supported: :start1 :end1 :start2 :end2 Fremove* Remove all occurrences of ITEM in SEQ. This is a non-destructive function; it makes a copy of SEQ if necessary to avoid corrupting the original SEQ. Keywords supported: :test :test-not :key :count :start :end :from-end Fremove-if Remove all items satisfying PREDICATE in SEQ. This is a non-destructive function; it makes a copy of SEQ if necessary to avoid corrupting the original SEQ. Keywords supported: :key :count :start :end :from-end Fremove-if-not Remove all items not satisfying PREDICATE in SEQ. This is a non-destructive function; it makes a copy of SEQ if necessary to avoid corrupting the original SEQ. Keywords supported: :key :count :start :end :from-end Fdelete* Remove all occurrences of ITEM in SEQ. This is a destructive function; it reuses the storage of SEQ whenever possible. Keywords supported: :test :test-not :key :count :start :end :from-end Fdelete-if Remove all items satisfying PREDICATE in SEQ. This is a destructive function; it reuses the storage of SEQ whenever possible. Keywords supported: :key :count :start :end :from-end Fdelete-if-not Remove all items not satisfying PREDICATE in SEQ. This is a destructive function; it reuses the storage of SEQ whenever possible. Keywords supported: :key :count :start :end :from-end Fremove Remove all occurrences of ITEM in SEQ, testing with `equal' This is a non-destructive function; it makes a copy of SEQ if necessary to avoid corrupting the original SEQ. Also see: `remove*', `delete', `delete*' Fremq Remove all occurances of ELT in LIST, comparing with `eq'. This is a non-destructive function; it makes a copy of LIST to avoid corrupting the original LIST. Also see: `delq', `delete', `delete*', `remove', `remove*'. Fremove-duplicates Return a copy of SEQ with all duplicate elements removed. Keywords supported: :test :test-not :key :start :end :from-end Fdelete-duplicates Remove all duplicate elements from SEQ (destructively). Keywords supported: :test :test-not :key :start :end :from-end Fsubstitute Substitute NEW for OLD in SEQ. This is a non-destructive function; it makes a copy of SEQ if necessary to avoid corrupting the original SEQ. Keywords supported: :test :test-not :key :count :start :end :from-end Fsubstitute-if Substitute NEW for all items satisfying PREDICATE in SEQ. This is a non-destructive function; it makes a copy of SEQ if necessary to avoid corrupting the original SEQ. Keywords supported: :key :count :start :end :from-end Fsubstitute-if-not Substitute NEW for all items not satisfying PREDICATE in SEQ. This is a non-destructive function; it makes a copy of SEQ if necessary to avoid corrupting the original SEQ. Keywords supported: :key :count :start :end :from-end Fnsubstitute Substitute NEW for OLD in SEQ. This is a destructive function; it reuses the storage of SEQ whenever possible. Keywords supported: :test :test-not :key :count :start :end :from-end Fnsubstitute-if Substitute NEW for all items satisfying PREDICATE in SEQ. This is a destructive function; it reuses the storage of SEQ whenever possible. Keywords supported: :key :count :start :end :from-end Fnsubstitute-if-not Substitute NEW for all items not satisfying PREDICATE in SEQ. This is a destructive function; it reuses the storage of SEQ whenever possible. Keywords supported: :key :count :start :end :from-end Ffind Find the first occurrence of ITEM in LIST. Return the matching ITEM, or nil if not found. Keywords supported: :test :test-not :key :start :end :from-end Ffind-if Find the first item satisfying PREDICATE in LIST. Return the matching ITEM, or nil if not found. Keywords supported: :key :start :end :from-end Ffind-if-not Find the first item not satisfying PREDICATE in LIST. Return the matching ITEM, or nil if not found. Keywords supported: :key :start :end :from-end Fposition Find the first occurrence of ITEM in LIST. Return the index of the matching item, or nil if not found. Keywords supported: :test :test-not :key :start :end :from-end Fposition-if Find the first item satisfying PREDICATE in LIST. Return the index of the matching item, or nil if not found. Keywords supported: :key :start :end :from-end Fposition-if-not Find the first item not satisfying PREDICATE in LIST. Return the index of the matching item, or nil if not found. Keywords supported: :key :start :end :from-end Fcount Count the number of occurrences of ITEM in LIST. Keywords supported: :test :test-not :key :start :end Fcount-if Count the number of items satisfying PREDICATE in LIST. Keywords supported: :key :start :end Fcount-if-not Count the number of items not satisfying PREDICATE in LIST. Keywords supported: :key :start :end Fmismatch Compare SEQ1 with SEQ2, return index of first mismatching element. Return nil if the sequences match. If one sequence is a prefix of the other, the return value indicates the end of the shorted sequence. Keywords supported: :test :test-not :key :start1 :end1 :start2 :end2 :from-end Fsearch Search for SEQ1 as a subsequence of SEQ2. Return the index of the leftmost element of the first match found; return nil if there are no matches. Keywords supported: :test :test-not :key :start1 :end1 :start2 :end2 :from-end Fsort* Sort the argument SEQUENCE according to PREDICATE. This is a destructive function; it reuses the storage of SEQUENCE if possible. Keywords supported: :key Fstable-sort Sort the argument SEQUENCE stably according to PREDICATE. This is a destructive function; it reuses the storage of SEQUENCE if possible. Keywords supported: :key Fmerge Destructively merge the two sequences to produce a new sequence. TYPE is the sequence type to return, SEQ1 and SEQ2 are the two argument sequences, and PRED is a `less-than' predicate on the elements. Keywords supported: :key Fmember* Find the first occurrence of ITEM in LIST. Return the sublist of LIST whose car is ITEM. Keywords supported: :test :test-not :key Fmember-if Find the first item satisfying PREDICATE in LIST. Return the sublist of LIST whose car matches. Keywords supported: :key Fmember-if-not Find the first item not satisfying PREDICATE in LIST. Return the sublist of LIST whose car matches. Keywords supported: :key Fassoc* Find the first item whose car matches ITEM in LIST. Keywords supported: :test :test-not :key Fassoc-if Find the first item whose car satisfies PREDICATE in LIST. Keywords supported: :key Fassoc-if-not Find the first item whose car does not satisfy PREDICATE in LIST. Keywords supported: :key Frassoc* Find the first item whose cdr matches ITEM in LIST. Keywords supported: :test :test-not :key Frassoc-if Find the first item whose cdr satisfies PREDICATE in LIST. Keywords supported: :key Frassoc-if-not Find the first item whose cdr does not satisfy PREDICATE in LIST. Keywords supported: :key Funion Combine LIST1 and LIST2 using a set-union operation. The result list contains all items that appear in either LIST1 or LIST2. This is a non-destructive function; it makes a copy of the data if necessary to avoid corrupting the original LIST1 and LIST2. Keywords supported: :test :test-not :key Fnunion Combine LIST1 and LIST2 using a set-union operation. The result list contains all items that appear in either LIST1 or LIST2. This is a destructive function; it reuses the storage of LIST1 and LIST2 whenever possible. Keywords supported: :test :test-not :key Fintersection Combine LIST1 and LIST2 using a set-intersection operation. The result list contains all items that appear in both LIST1 and LIST2. This is a non-destructive function; it makes a copy of the data if necessary to avoid corrupting the original LIST1 and LIST2. Keywords supported: :test :test-not :key Fnintersection Combine LIST1 and LIST2 using a set-intersection operation. The result list contains all items that appear in both LIST1 and LIST2. This is a destructive function; it reuses the storage of LIST1 and LIST2 whenever possible. Keywords supported: :test :test-not :key Fset-difference Combine LIST1 and LIST2 using a set-difference operation. The result list contains all items that appear in LIST1 but not LIST2. This is a non-destructive function; it makes a copy of the data if necessary to avoid corrupting the original LIST1 and LIST2. Keywords supported: :test :test-not :key Fnset-difference Combine LIST1 and LIST2 using a set-difference operation. The result list contains all items that appear in LIST1 but not LIST2. This is a destructive function; it reuses the storage of LIST1 and LIST2 whenever possible. Keywords supported: :test :test-not :key Fset-exclusive-or Combine LIST1 and LIST2 using a set-exclusive-or operation. The result list contains all items that appear in exactly one of LIST1, LIST2. This is a non-destructive function; it makes a copy of the data if necessary to avoid corrupting the original LIST1 and LIST2. Keywords supported: :test :test-not :key Fnset-exclusive-or Combine LIST1 and LIST2 using a set-exclusive-or operation. The result list contains all items that appear in exactly one of LIST1, LIST2. This is a destructive function; it reuses the storage of LIST1 and LIST2 whenever possible. Keywords supported: :test :test-not :key Fsubsetp True if LIST1 is a subset of LIST2. I.e., if every element of LIST1 also appears in LIST2. Keywords supported: :test :test-not :key Fsubst-if Substitute NEW for elements matching PREDICATE in TREE (non-destructively). Return a copy of TREE with all matching elements replaced by NEW. Keywords supported: :key Fsubst-if-not Substitute NEW for elts not matching PREDICATE in TREE (non-destructively). Return a copy of TREE with all non-matching elements replaced by NEW. Keywords supported: :key Fnsubst Substitute NEW for OLD everywhere in TREE (destructively). Any element of TREE which is `eql' to OLD is changed to NEW (via a call to `setcar'). Keywords supported: :test :test-not :key Fnsubst-if Substitute NEW for elements matching PREDICATE in TREE (destructively). Any element of TREE which matches is changed to NEW (via a call to `setcar'). Keywords supported: :key Fnsubst-if-not Substitute NEW for elements not matching PREDICATE in TREE (destructively). Any element of TREE which matches is changed to NEW (via a call to `setcar'). Keywords supported: :key Fsublis Perform substitutions indicated by ALIST in TREE (non-destructively). Return a copy of TREE with all matching elements replaced. Keywords supported: :test :test-not :key Fnsublis Perform substitutions indicated by ALIST in TREE (destructively). Any matching element of TREE is changed via a call to `setcar'. Keywords supported: :test :test-not :key Ftree-equal T if trees X and Y have `eql' leaves. Atoms are compared by `eql'; cons cells are compared recursively. Keywords supported: :test :test-not :key Fgensym Generate a new uninterned symbol. The name is made by appending a number to PREFIX, default "G". Fgentemp Generate a new interned symbol with a unique name. The name is made by appending a number to PREFIX, default "G". Fdefun* (defun* NAME ARGLIST [DOCSTRING] BODY...): define NAME as a function. Like normal `defun', except ARGLIST allows full Common Lisp conventions, and BODY is implicitly surrounded by (block NAME ...). Fdefmacro* (defmacro* NAME ARGLIST [DOCSTRING] BODY...): define NAME as a macro. Like normal `defmacro', except ARGLIST allows full Common Lisp conventions, and BODY is implicitly surrounded by (block NAME ...). Ffunction* (function* SYMBOL-OR-LAMBDA): introduce a function. Like normal `function', except that if argument is a lambda form, its ARGLIST allows full Common Lisp conventions. Feval-when (eval-when (WHEN...) BODY...): control when BODY is evaluated. If `compile' is in WHEN, BODY is evaluated when compiled at top-level. If `load' is in WHEN, BODY is evaluated when loaded after top-level compile. If `eval' is in WHEN, BODY is evaluated when interpreted or at non-top-level. Fload-time-value Like `progn', but evaluates the body at load time. The result of the body appears to the compiler as a quoted constant. Fcase (case EXPR CLAUSES...): evals EXPR, chooses from CLAUSES on that value. Each clause looks like (KEYLIST BODY...). EXPR is evaluated and compared against each key in each KEYLIST; the corresponding BODY is evaluated. If no clause succeeds, case returns nil. A single atom may be used in place of a KEYLIST of one atom. A KEYLIST of `t' or `otherwise' is allowed only in the final clause, and matches if no other keys match. Key values are compared by `eql'. Fecase (ecase EXPR CLAUSES...): like `case', but error if no case fits. `otherwise'-clauses are not allowed. Ftypecase (typecase EXPR CLAUSES...): evals EXPR, chooses from CLAUSES on that value. Each clause looks like (TYPE BODY...). EXPR is evaluated and, if it satisfies TYPE, the corresponding BODY is evaluated. If no clause succeeds, typecase returns nil. A TYPE of `t' or `otherwise' is allowed only in the final clause, and matches if no other keys match. Fetypecase (etypecase EXPR CLAUSES...): like `typecase', but error if no case fits. `otherwise'-clauses are not allowed. Fblock (block NAME BODY...): define a lexically-scoped block named NAME. NAME may be any symbol. Code inside the BODY forms can call `return-from' to jump prematurely out of the block. This differs from `catch' and `throw' in two respects: First, the NAME is an unevaluated symbol rather than a quoted symbol or other form; and second, NAME is lexically rather than dynamically scoped: Only references to it within BODY will work. These references may appear inside macro expansions, but not inside functions called from BODY. Freturn (return [RESULT]): return from the block named nil. This is equivalent to `(return-from nil RESULT)'. Freturn-from (return-from NAME [RESULT]): return from the block named NAME. This jump out to the innermost enclosing `(block NAME ...)' form, returning RESULT from that form (or nil if RESULT is omitted). This is compatible with Common Lisp, but note that `defun' and `defmacro' do not create implicit blocks as they do in Common Lisp. Floop (loop CLAUSE...): The Common Lisp `loop' macro. Valid clauses are: for VAR from/upfrom/downfrom NUM to/upto/downto/above/below NUM by NUM, for VAR in LIST by FUNC, for VAR on LIST by FUNC, for VAR = INIT then EXPR, for VAR across ARRAY, repeat NUM, with VAR = INIT, while COND, until COND, always COND, never COND, thereis COND, collect EXPR into VAR, append EXPR into VAR, nconc EXPR into VAR, sum EXPR into VAR, count EXPR into VAR, maximize EXPR into VAR, minimize EXPR into VAR, if COND CLAUSE [and CLAUSE]... else CLAUSE [and CLAUSE...], unless COND CLAUSE [and CLAUSE]... else CLAUSE [and CLAUSE...], do EXPRS..., initially EXPRS..., finally EXPRS..., return EXPR, finally return EXPR, named NAME. Fdo The Common Lisp `do' loop. Format is: (do ((VAR INIT [STEP])...) (END-TEST [RESULT...]) BODY...) Fdo* The Common Lisp `do*' loop. Format is: (do* ((VAR INIT [STEP])...) (END-TEST [RESULT...]) BODY...) Fdolist (dolist (VAR LIST [RESULT]) BODY...): loop over a list. Evaluate BODY with VAR bound to each `car' from LIST, in turn. Then evaluate RESULT to get return value, default nil. Fdotimes (dotimes (VAR COUNT [RESULT]) BODY...): loop a certain number of times. Evaluate BODY with VAR bound to successive integers from 0, inclusive, to COUNT, exclusive. Then evaluate RESULT to get return value, default nil. Fdo-symbols (dosymbols (VAR [OBARRAY [RESULT]]) BODY...): loop over all symbols. Evaluate BODY with VAR bound to each interned symbol, or to each symbol from OBARRAY. Fpsetq (psetq SYM VAL SYM VAL ...): set SYMs to the values VALs in parallel. This is like `setq', except that all VAL forms are evaluated (in order) before assigning any symbols SYM to the corresponding values. Fprogv (progv SYMBOLS VALUES BODY...): bind SYMBOLS to VALUES dynamically in BODY. The forms SYMBOLS and VALUES are evaluated, and must evaluate to lists. Each SYMBOL in the first list is bound to the corresponding VALUE in the second list (or made unbound if VALUES is shorter than SYMBOLS); then the BODY forms are executed and their result is returned. This is much like a `let' form, except that the list of symbols can be computed at run-time. Fflet (flet ((FUNC ARGLIST BODY...) ...) FORM...): make temporary function defns. This is an analogue of `let' that operates on the function cell of FUNC rather than its value cell. The FORMs are evaluated with the specified function definitions in place, then the definitions are undone (the FUNCs go back to their previous definitions, or lack thereof). Flabels (labels ((FUNC ARGLIST BODY...) ...) FORM...): make temporary func bindings. This is like `flet', except the bindings are lexical instead of dynamic. Unlike `flet', this macro is fully complaint with the Common Lisp standard. Fmacrolet (macrolet ((NAME ARGLIST BODY...) ...) FORM...): make temporary macro defns. This is like `flet', but for macros instead of functions. Fsymbol-macrolet (symbol-macrolet ((NAME EXPANSION) ...) FORM...): make symbol macro defns. Within the body FORMs, references to the variable NAME will be replaced by EXPANSION, and (setq NAME ...) will act like (setf EXPANSION ...). Flexical-let (lexical-let BINDINGS BODY...): like `let', but lexically scoped. The main visible difference is that lambdas inside BODY will create lexical closures as in Common Lisp. Flexical-let* (lexical-let* BINDINGS BODY...): like `let*', but lexically scoped. The main visible difference is that lambdas inside BODY will create lexical closures as in Common Lisp. Fmultiple-value-bind (multiple-value-bind (SYM SYM...) FORM BODY): collect multiple return values. FORM must return a list; the BODY is then executed with the first N elements of this list bound (`let'-style) to each of the symbols SYM in turn. This is analogous to the Common Lisp `multiple-value-bind' macro, using lists to simulate true multiple return values. For compatibility, (values A B C) is a synonym for (list A B C). Fmultiple-value-setq (multiple-value-setq (SYM SYM...) FORM): collect multiple return values. FORM must return a list; the first N elements of this list are stored in each of the symbols SYM in turn. This is analogous to the Common Lisp `multiple-value-setq' macro, using lists to simulate true multiple return values. For compatibility, (values A B C) is a synonym for (list A B C). Fdefine-setf-method (define-setf-method NAME ARGLIST BODY...): define a `setf' method. This method shows how to handle `setf's to places of the form (NAME ARGS...). The argument forms ARGS are bound according to ARGLIST, as if NAME were going to be expanded as a macro, then the BODY forms are executed and must return a list of five elements: a temporary-variables list, a value-forms list, a store-variables list (of length one), a store-form, and an access- form. See `defsetf' for a simpler way to define most setf-methods. Fdefsetf (defsetf NAME FUNC): define a `setf' method. This macro is an easy-to-use substitute for `define-setf-method' that works well for simple place forms. In the simple `defsetf' form, `setf's of the form (setf (NAME ARGS...) VAL) are transformed to function or macro calls of the form (FUNC ARGS... VAL). Example: (defsetf aref aset). Alternate form: (defsetf NAME ARGLIST (STORE) BODY...). Here, the above `setf' call is expanded by binding the argument forms ARGS according to ARGLIST, binding the value form VAL to STORE, then executing BODY, which must return a Lisp form that does the necessary `setf' operation. Actually, ARGLIST and STORE may be bound to temporary variables which are introduced automatically to preserve proper execution order of the arguments. Example: (defsetf nth (n x) (v) (list 'setcar (list 'nthcdr n x) v)). Fget-setf-method Return a list of five values describing the setf-method for PLACE. PLACE may be any Lisp form which can appear as the PLACE argument to a macro like `setf' or `incf'. Fsetf (setf PLACE VAL PLACE VAL ...): set each PLACE to the value of its VAL. This is a generalized version of `setq'; the PLACEs may be symbolic references such as (car x) or (aref x i), as well as plain symbols. For example, (setf (cadar x) y) is equivalent to (setcar (cdar x) y). The return value is the last VAL in the list. Fpsetf (psetf PLACE VAL PLACE VAL ...): set PLACEs to the values VALs in parallel. This is like `setf', except that all VAL forms are evaluated (in order) before assigning any PLACEs to the corresponding values. Fremf (remf PLACE TAG): remove TAG from property list PLACE. PLACE may be a symbol, or any generalized variable allowed by `setf'. The form returns true if TAG was found and removed, nil otherwise. Fshiftf (shiftf PLACE PLACE... VAL): shift left among PLACEs. Example: (shiftf A B C) sets A to B, B to C, and returns the old A. Each PLACE may be a symbol, or any generalized variable allowed by `setf'. Frotatef (rotatef PLACE...): rotate left among PLACEs. Example: (rotatef A B C) sets A to B, B to C, and C to A. It returns nil. Each PLACE may be a symbol, or any generalized variable allowed by `setf'. Fletf (letf ((PLACE VALUE) ...) BODY...): temporarily bind to PLACEs. This is the analogue of `let', but with generalized variables (in the sense of `setf') for the PLACEs. Each PLACE is set to the corresponding VALUE, then the BODY forms are executed. On exit, either normally or because of a `throw' or error, the PLACEs are set back to their original values. Note that this macro is *not* available in Common Lisp. As a special case, if `(PLACE)' is used instead of `(PLACE VALUE)', the PLACE is not modified before executing BODY. Fletf* (letf* ((PLACE VALUE) ...) BODY...): temporarily bind to PLACEs. This is the analogue of `let*', but with generalized variables (in the sense of `setf') for the PLACEs. Each PLACE is set to the corresponding VALUE, then the BODY forms are executed. On exit, either normally or because of a `throw' or error, the PLACEs are set back to their original values. Note that this macro is *not* available in Common Lisp. As a special case, if `(PLACE)' is used instead of `(PLACE VALUE)', the PLACE is not modified before executing BODY. Fcallf (callf FUNC PLACE ARGS...): set PLACE to (FUNC PLACE ARGS...). FUNC should be an unquoted function name. PLACE may be a symbol, or any generalized variable allowed by `setf'. Fcallf2 (callf2 FUNC ARG1 PLACE ARGS...): set PLACE to (FUNC ARG1 PLACE ARGS...). Like `callf', but PLACE is the second argument of FUNC, not the first. Fdefine-modify-macro (define-modify-macro NAME ARGLIST FUNC): define a `setf'-like modify macro. If NAME is called, it combines its PLACE argument with the other arguments from ARGLIST using FUNC: (define-modify-macro incf (&optional (n 1)) +) Fdefstruct (defstruct (NAME OPTIONS...) (SLOT SLOT-OPTS...)...): define a struct type. This macro defines a new Lisp data type called NAME, which contains data stored in SLOTs. This defines a `make-NAME' constructor, a `copy-NAME' copier, a `NAME-p' predicate, and setf-able `NAME-SLOT' accessors. Fdeftype (deftype NAME ARGLIST BODY...): define NAME as a new data type. The type name can then be used in `typecase', `check-type', etc. Ftypep Check that OBJECT is of type TYPE. TYPE is a Common Lisp-style type specifier. Fcheck-type Verify that FORM is of type TYPE; signal an error if not. STRING is an optional description of the desired type. Fassert Verify that FORM returns non-nil; signal an error if not. Second arg SHOW-ARGS means to include arguments of FORM in message. Other args STRING and ARGS... are arguments to be passed to `error'. They are not evaluated unless the assertion fails. If STRING is omitted, a default message listing FORM itself is used. Fignore-errors Execute FORMS; if an error occurs, return nil. Otherwise, return result of last FORM. Fdefine-compiler-macro (define-compiler-macro FUNC ARGLIST BODY...): Define a compiler-only macro. This is like `defmacro', but macro expansion occurs only if the call to FUNC is compiled (i.e., not interpreted). Compiler macros should be used for optimizing the way calls to FUNC are compiled; the form returned by BODY should do the same thing as a call to the normal function called FUNC, though possibly more efficiently. Note that, like regular macros, compiler macros are expanded repeatedly until no further expansions are possible. Unlike regular macros, BODY can decide to "punt" and leave the original function call alone by declaring an initial `&whole foo' parameter and then returning foo. Fdefine-widget-keywords This doesn't do anything in Emacs 20 or XEmacs. Fdefine-widget Define a new widget type named NAME from CLASS. NAME and CLASS should both be symbols, CLASS should be one of the existing widget types, or nil to create the widget from scratch. After the new widget has been defined, the following two calls will create identical widgets: * (widget-create NAME) * (apply 'widget-create CLASS ARGS) The third argument DOC is a documentation string for the widget. Vcustom-define-hook Hook called after defining each customize option. Fcustom-initialize-default Initialize SYMBOL with VALUE. This will do nothing if symbol already has a default binding. Otherwise, if symbol has a `saved-value' property, it will evaluate the car of that and used as the default binding for symbol. Otherwise, VALUE will be evaluated and used as the default binding for symbol. Fcustom-initialize-set Initialize SYMBOL with VALUE. Like `custom-initialize-default', but use the function specified by `:set' to initialize SYMBOL. Fcustom-initialize-reset Initialize SYMBOL with VALUE. Like `custom-initialize-set', but use the function specified by `:get' to reinitialize SYMBOL if it is already bound. Fcustom-initialize-changed Initialize SYMBOL with VALUE. Like `custom-initialize-reset', but only use the `:set' function if the not using the standard setting. Otherwise, use the `set-default'. Fcustom-declare-variable Like `defcustom', but SYMBOL and VALUE are evaluated as normal arguments. Fdefcustom Declare SYMBOL as a customizable variable that defaults to VALUE. DOC is the variable documentation. Neither SYMBOL nor VALUE needs to be quoted. If SYMBOL is not already bound, initialize it to VALUE. The remaining arguments should have the form [KEYWORD VALUE]... The following KEYWORD's are defined: :type VALUE should be a widget type for editing the symbols value. The default is `sexp'. :options VALUE should be a list of valid members of the widget type. :group VALUE should be a customization group. Add SYMBOL to that group. :initialize VALUE should be a function used to initialize the variable. It takes two arguments, the symbol and value given in the `defcustom' call. The default is `custom-initialize-set' :set VALUE should be a function to set the value of the symbol. It takes two arguments, the symbol to set and the value to give it. The default is `set-default'. :get VALUE should be a function to extract the value of symbol. The function takes one argument, a symbol, and should return the current value for that symbol. The default is `default-value'. :require VALUE should be a feature symbol. Each feature will be required after initialization, of the the user have saved this option. Read the section about customization in the Emacs Lisp manual for more information. Fdefface Declare FACE as a customizable face that defaults to SPEC. FACE does not need to be quoted. Third argument DOC is the face documentation. If FACE has been set with `custom-set-face', set the face attributes as specified by that function, otherwise set the face attributes according to SPEC. The remaining arguments should have the form [KEYWORD VALUE]... The following KEYWORDs are defined: :group VALUE should be a customization group. Add FACE to that group. SPEC should be an alist of the form ((DISPLAY ATTS)...). ATTS is a list of face attributes and their values. The possible attributes are defined in the variable `custom-face-attributes'. The ATTS of the first entry in SPEC where the DISPLAY matches the frame should take effect in that frame. DISPLAY can either be the symbol t, which will match all frames, or an alist of the form ((REQ ITEM...)...) For the DISPLAY to match a FRAME, the REQ property of the frame must match one of the ITEM. The following REQ are defined: `type' (the value of `window-system') Should be one of `x' or `tty'. `class' (the frame's color support) Should be one of `color', `grayscale', or `mono'. `background' (what color is used for the background text) Should be one of `light' or `dark'. Read the section about customization in the Emacs Lisp manual for more information. Fcustom-declare-group Like `defgroup', but SYMBOL is evaluated as a normal argument. Fdefgroup Declare SYMBOL as a customization group containing MEMBERS. SYMBOL does not need to be quoted. Third arg DOC is the group documentation. MEMBERS should be an alist of the form ((NAME WIDGET)...) where NAME is a symbol and WIDGET is a widget for editing that symbol. Useful widgets are `custom-variable' for editing variables, `custom-face' for edit faces, and `custom-group' for editing groups. The remaining arguments should have the form [KEYWORD VALUE]... The following KEYWORD's are defined: :group VALUE should be a customization group. Add SYMBOL to that group. Read the section about customization in the Emacs Lisp manual for more information. Vcustom-group-hash-table Hash-table of non-empty groups. Fcustom-add-to-group To existing GROUP add a new OPTION of type WIDGET. If there already is an entry for that option, overwrite it. Fcustom-handle-all-keywords For customization option SYMBOL, handle keyword arguments ARGS. Third argument TYPE is the custom option type. Fcustom-handle-keyword For customization option SYMBOL, handle KEYWORD with VALUE. Fourth argument TYPE is the custom option type. Fcustom-add-option To the variable SYMBOL add OPTION. If SYMBOL is a hook variable, OPTION should be a hook member. For other types variables, the effect is undefined. Fcustom-add-link To the custom option SYMBOL add the link WIDGET. Fcustom-add-load To the custom option SYMBOL add the dependency LOAD. LOAD should be either a library file name, or a feature name. Fcustom-set-variables Initialize variables according to user preferences. The arguments should be a list where each entry has the form: (SYMBOL VALUE [NOW]) The unevaluated VALUE is stored as the saved value for SYMBOL. If NOW is present and non-nil, VALUE is also evaluated and bound as the default value for the SYMBOL. Frecursion-depth Return the current depth in recursive edits. Ftop-level Exit all recursive editing levels. Fexit-recursive-edit Exit from the innermost recursive edit or minibuffer. Fabort-recursive-edit Abort the command that requested this recursive edit or minibuffer input. Fkeyboard-quit Signal a `quit' condition. If this character is typed while lisp code is executing, it will be treated as an interrupt. If this character is typed at top-level, this simply beeps. If `zmacs-regions' is true, and the zmacs region is active in this buffer, then this key deactivates the region without beeping or signalling. Vbuffer-quit-function Function to call to "quit" the current buffer, or nil if none. \[keyboard-escape-quit] calls this function when its more local actions (such as cancelling a prefix argument, minibuffer or region) do not apply. Fkeyboard-escape-quit Exit the current "mode" (in a generalized sense of the word). This command can exit an interactive command such as `query-replace', can clear out a prefix argument or a region, can get out of the minibuffer or other recursive edit, cancel the use of the current buffer (for special-purpose buffers), or go back to just one window (by deleting all but the selected window). Vlast-error #### Document me. Fdescribe-last-error Redisplay the last error-message. See the variable `last-error'. Fexecute-extended-command Read a command name from the minibuffer using 'completing-read'. Then call the specified command using 'command-execute' and return its return value. If the command asks for a prefix argument, supply the value of the current raw prefix argument, or the value of PREFIX-ARG when called from Lisp. Fy-or-n-p-minibuf Ask user a "y or n" question. Return t if answer is "y". Takes one argument, which is the string to display to ask the question. It should end in a space; `y-or-n-p' adds `(y or n) ' to it. No confirmation of the answer is requested; a single character is enough. Also accepts Space to mean yes, or Delete to mean no. Fyes-or-no-p-minibuf Ask user a yes-or-no question. Return t if answer is yes. Takes one argument, which is the string to display to ask the question. It should end in a space; `yes-or-no-p' adds `(yes or no) ' to it. The user must confirm the answer with RET, and can edit it until it has been confirmed. Fread-char Read a character from the command input (keyboard or macro). If a mouse click or non-ASCII character is detected, an error is signalled. The character typed is returned as an ASCII value. This is most likely the wrong thing for you to be using: consider using the `next-command-event' function instead. Fread-char-exclusive Read a character from the command input (keyboard or macro). If a mouse click or non-ASCII character is detected, it is discarded. The character typed is returned as an ASCII value. This is most likely the wrong thing for you to be using: consider using the `next-command-event' function instead. Fread-quoted-char Like `read-char', except that if the first character read is an octal digit, we read up to two more octal digits and return the character represented by the octal number consisting of those digits. Optional argument PROMPT specifies a string to use to prompt the user. Fmomentary-string-display Momentarily display STRING in the buffer at POS. Display remains until next character is typed. If the char is EXIT-CHAR (optional third arg, default is SPC) it is swallowed; otherwise it is then available as input (as a command if nothing else). Display MESSAGE (optional fourth arg) in the echo area. If MESSAGE is nil, instructions to type EXIT-CHAR are displayed there. Fsuppress-keymap Make MAP override all normally self-inserting keys to be undefined. Normally, as an exception, digits and minus-sign are set to make prefix args, but optional second arg NODIGITS non-nil treats them like other chars. Fsubstitute-key-definition Replace OLDDEF with NEWDEF for any keys in KEYMAP now defined as OLDDEF. In other words, OLDDEF is replaced with NEWDEF wherever it appears. Prefix keymaps are checked recursively. If optional fourth argument OLDMAP is specified, we redefine in KEYMAP as NEWDEF those chars which are defined as OLDDEF in OLDMAP, unless that keybinding is already present in keymap. If optional fifth argument PREFIX is defined, then only those occurrences of OLDDEF found in keymaps accessible through the keymap bound to PREFIX in KEYMAP are redefined. See also `accessible-keymaps'. Finsert-key-binding Insert the command bound to KEY. Fread-command-or-command-sexp Read a command symbol or command sexp. A command sexp is wrapped in an interactive lambda if needed. Prompts with PROMPT. Flocal-key-binding Return the binding for command KEYS in current local keymap only. KEYS is a string, a vector of events, or a vector of key-description lists as described in the documentation for the `define-key' function. The binding is probably a symbol with a function definition; see the documentation for `lookup-key' for more information. Fglobal-key-binding Return the binding for command KEYS in current global keymap only. KEYS is a string or vector of events, a sequence of keystrokes. The binding is probably a symbol with a function definition; see the documentation for `lookup-key' for more information. Fglobal-set-key Give KEY a global binding as COMMAND. COMMAND is a symbol naming an interactively-callable function. KEY is a string, a vector of events, or a vector of key-description lists as described in the documentation for the `define-key' function. Note that if KEY has a local binding in the current buffer that local binding will continue to shadow any global binding. Flocal-set-key Give KEY a local binding as COMMAND. COMMAND is a symbol naming an interactively-callable function. KEY is a string, a vector of events, or a vector of key-description lists as described in the documentation for the `define-key' function. The binding goes in the current buffer's local map, which is shared with other buffers in the same major mode. Fglobal-unset-key Remove global binding of KEY. KEY is a string, a vector of events, or a vector of key-description lists as described in the documentation for the `define-key' function. Flocal-unset-key Remove local binding of KEY. KEY is a string, a vector of events, or a vector of key-description lists as described in the documentation for the `define-key' function. Fminor-mode-key-binding Find the visible minor mode bindings of KEY. Return an alist of pairs (MODENAME . BINDING), where MODENAME is the symbol which names the minor mode binding KEY, and BINDING is KEY's definition in that mode. In particular, if KEY has no minor-mode bindings, return nil. If the first binding is a non-prefix, all subsequent bindings will be omitted, since they would be ignored. Similarly, the list doesn't include non-prefix bindings that come after prefix bindings. If optional argument ACCEPT-DEFAULT is non-nil, recognize default bindings; see the description of `lookup-key' for more details about this. Fcurrent-minor-mode-maps Return a list of keymaps for the minor modes of the current buffer. Fdefine-prefix-command Define COMMAND as a prefix command. A new sparse keymap is stored as COMMAND's function definition. If second optional argument MAPVAR is not specified, COMMAND's value (as well as its function definition) is set to the keymap. If a second optional argument MAPVAR is given and is not `t', the map is stored as its value. Regardless of MAPVAR, COMMAND's function-value is always set to the keymap. Fevents-to-keys Given a vector of event objects, returns a vector of key descriptors, or a string (if they all fit in the ASCII range). Optional arg NO-MICE means that button events are not allowed. Fnext-key-event Return the next available keyboard event. Fkey-sequence-list-description Convert a key sequence KEYS to the full [(modifiers... key)...] form. Argument KEYS can be in any form accepted by `define-key' function. Fevent-apply-modifier Return the next key event, with a modifier flag applied. SYMBOL is the name of this modifier, as a symbol. `function-key-map' is scanned for prefix bindings. Fmake-syntax-table Return a new syntax table. It inherits all characters from the standard syntax table. Fchar-syntax-from-code Extract the syntax designator from the internal syntax code CODE. CODE is the value actually contained in the syntax table. Fset-char-syntax-in-code Return a new internal syntax code whose syntax designator is DESIG. Other characteristics are the same as in CODE. Fsyntax-code-to-string Return a string equivalent to internal syntax code CODE. The string can be passed to `modify-syntax-entry'. If CODE is invalid, return nil. Fsyntax-string-to-code Return the internal syntax code equivalent to STRING. STRING should be something acceptable as the second argument to `modify-syntax-entry'. If STRING is invalid, signal an error. Fmodify-syntax-entry Set syntax for the characters CHAR-RANGE according to string SPEC. CHAR-RANGE is a single character or a range of characters, as per `put-char-table'. The syntax is changed only for table TABLE, which defaults to the current buffer's syntax table. The first character of SPEC should be one of the following: Space whitespace syntax. w word constituent. _ symbol constituent. . punctuation. ( open-parenthesis. ) close-parenthesis. " string quote. \ character-quote. $ paired delimiter. ' expression quote or prefix operator. < comment starter. > comment ender. / character-quote. @ inherit from `standard-syntax-table'. Only single-character comment start and end sequences are represented thus. Two-character sequences are represented as described below. The second character of SPEC is the matching parenthesis, used only if the first character is `(' or `)'. Any additional characters are flags. Defined flags are the characters 1, 2, 3, 4, 5, 6, 7, 8, p, a, and b. 1 means C is the first of a two-char comment start sequence of style a. 2 means C is the second character of such a sequence. 3 means C is the first of a two-char comment end sequence of style a. 4 means C is the second character of such a sequence. 5 means C is the first of a two-char comment start sequence of style b. 6 means C is the second character of such a sequence. 7 means C is the first of a two-char comment end sequence of style b. 8 means C is the second character of such a sequence. p means C is a prefix character for `backward-prefix-chars'; such characters are treated as whitespace when they occur between expressions. a means C is comment starter or comment ender for comment style a (default) b means C is comment starter or comment ender for comment style b. Fmap-syntax-table Map FUNCTION over entries in syntax table TABLE, collapsing inheritance. This is similar to `map-char-table', but works only on syntax tables, and collapses any entries that call for inheritance by invisibly substituting the inherited values from the standard syntax table. Fsymbol-near-point Return the first textual item to the nearest point. Fdevice-list Return a list of all devices. Fdevice-type Return the type of the specified device (e.g. `x' or `tty'). This is equivalent to the type of the device's console. Value is `tty' for a tty device (a character-only terminal), `x' for a device that is a screen on an X display, `ns' for a device that is a NeXTstep connection (not yet implemented), `win32' for a device that is a Windows or Windows NT connection (not yet implemented), `pc' for a device that is a direct-write MS-DOS screen (not yet implemented), `stream' for a stream device (which acts like a stdio stream), and `dead' for a deleted device. Fmake-tty-device Create a new device on TTY. TTY should be the name of a tty device file (e.g. "/dev/ttyp3" under SunOS et al.), as returned by the `tty' command. A value of nil means use the stdin and stdout as passed to XEmacs from the shell. If TERMINAL-TYPE is non-nil, it should be a string specifying the type of the terminal attached to the specified tty. If it is nil, the terminal type will be inferred from the TERM environment variable. If CONTROLLING-PROCESS is non-nil, it should be an integer specifying the process id of the process in control of the specified tty. If it is nil, it is assumes to be the value returned by emacs-pid. Fmake-x-device Create a new device connected to DISPLAY. Fdevice-on-window-system-p Return non-nil if DEVICE is on a window system. This generally means that there is support for the mouse, the menubar, the toolbar, glyphs, etc. Fquit-char Return the character that causes a QUIT to happen. This is normally C-g. Optional arg CONSOLE specifies the console that the information is returned for; nil means the current console. Fresume-pid-console Resume the consoles with a controlling process of PID. Fdefine-obsolete-function-alias Define OLDFUN as an obsolete alias for function NEWFUN. This makes calling OLDFUN equivalent to calling NEWFUN and marks OLDFUN as obsolete. Fdefine-compatible-function-alias Define OLDFUN as a compatible alias for function NEWFUN. This makes calling OLDFUN equivalent to calling NEWFUN and marks OLDFUN as provided for compatibility only. Fdefine-obsolete-variable-alias Define OLDVAR as an obsolete alias for variable NEWVAR. This makes referencing or setting OLDVAR equivalent to referencing or setting NEWVAR and marks OLDVAR as obsolete. If OLDVAR was bound and NEWVAR was not, Set NEWVAR to OLDVAR. Note: Use this before any other references (defvar/defcustom) to NEWVAR Fdefine-compatible-variable-alias Define OLDVAR as a compatible alias for variable NEWVAR. This makes referencing or setting OLDVAR equivalent to referencing or setting NEWVAR and marks OLDVAR as provided for compatibility only. Fx-display-color-p Returns non-nil if DEVICE is a color device. Fx-display-grayscale-p Returns non-nil if DEVICE is a grayscale device. Fextent-data Obsolete. Returns the `data' property of the given extent. Fset-extent-data Obsolete. Sets the `data' property of the given extent. Fset-extent-attribute Fextent-glyph Fextent-layout Fset-extent-layout Fx-create-screen Fframe-first-window Returns the topmost, leftmost window of FRAME. If omitted, FRAME defaults to the currently selected frame. Fframe-parameters Return the parameters-alist of frame FRAME. It is a list of elements of the form (PARM . VALUE), where PARM is a symbol. The meaningful PARMs depend on the kind of frame. If FRAME is omitted, return information on the currently selected frame. See the variables `default-frame-plist', `default-x-frame-plist', and `default-tty-frame-plist' for a description of the parameters meaningful for particular types of frames. Fmodify-frame-parameters Modify the properties of frame FRAME according to ALIST. ALIST is an alist of properties to change and their new values. Each element of ALIST has the form (PARM . VALUE), where PARM is a symbol. The meaningful PARMs depend on the kind of frame. See `set-frame-properties' for built-in property names. Fkeymap-parent Returns the first parent of the given keymap. Fset-keymap-parent Makes the given keymap have (only) the given parent. Fadd-menu-item Obsolete. See the function `add-menu-button'. Fadd-menu See the function `add-submenu'. Fx-set-frame-icon-pixmap Set the icon of the given frame to the given image instance, which should be an image instance object (as returned by `make-image-instance'), a glyph object (as returned by `make-glyph'), or nil. If a glyph object is given, the glyph will be instantiated on the frame to produce an image instance object. If the given image instance has a mask, that will be used as the icon mask; however, not all window managers support this. The window manager is also not required to support color pixmaps, only bitmaps (one plane deep). Optional third argument is ignored. If you're concerned about this incomplete backwards incompatibility, you should convert your code to use `frame-icon-glyph' -- you can specify a mask for an XBM file using the standard image instantiator format. Fmake-pixmap Create a glyph with NAME as an image specifier and locale LOCALE. The file should be in `XBM' or `XPM' format. If the XBMLANGPATH environment variable is set, it will be searched for matching files. Next, the directories listed in the `x-bitmap-file-path' variable will be searched (this variable is initialized from the "*bitmapFilePath" resource). Finally, the XEmacs etc/ directory (the value of `data-directory') will be searched. The file argument may also be a list of the form (width height data) where width and height are the size in pixels, and data is a string, containing the raw bits of the bitmap. (Bitmaps specified this way can only be one bit deep.) If compiled with support for XPM, the file argument may also be a string which is the contents of an XPM file (that is, a string beginning with the characters "/* XPM */"; see the XPM documentation). The optional second argument is the specifier locale for this pixmap glyph. The returned object is a glyph object. To get the actual pixmap object for a given frame, use the function `glyph-instance'. Fmake-cursor Creates a pointer image instance with NAME as an image specifier. The optional second and third arguments are the foreground and background colors. They may be color name strings or `pixel' objects. The optional fourth argument is the device on which to allocate the cursor (defaults to the selected device). This allocates a new pointer in the X server, and signals an error if the pointer is unknown or cannot be allocated. A pointer name can take many different forms. It can be: - any of the standard cursor names from appendix B of the Xlib manual (also known as the file <X11/cursorfont.h>) minus the XC_ prefix; - the name of a font, and glyph index into it of the form "FONT fontname index [[mask-font] mask-index]"; - the name of a bitmap or pixmap file; - or an image instance object, as returned by `make-image-instance'. If it is an image instance or pixmap file, and that pixmap comes with a mask, then that mask will be used. If it is an image instance, it must have only one plane, since X pointers may only have two colors. If it is a pixmap file, then the file will be read in monochrome. If it is a bitmap file, and if a bitmap file whose name is the name of the pointer with "msk" or "Mask" appended exists, then that second bitmap will be used as the mask. For example, a pair of files might be named "pointer.xbm" and "pointer.xbmmsk". The returned object is a normal, first-class lisp object. The way you `deallocate' the pointer is the way you deallocate any other lisp object: you drop all pointers to it and allow it to be garbage collected. When these objects are GCed, the underlying X data is deallocated as well. Fx-color-values Return a description of the color named COLOR on frame FRAME. The value is a list of integer RGB values--(RED GREEN BLUE). These values appear to range from 0 to 65280 or 65535, depending on the system; white is (65280 65280 65280) or (65535 65535 65535). If FRAME is omitted or nil, use the selected frame. Fstring-to-sequence Convert STRING to a sequence of TYPE which contains characters in STRING. TYPE should be `list' or `vector'. Multibyte characters are concerned. Fstring-to-list Return a list of characters in STRING. Fstring-to-vector Return a vector of characters in STRING. Fstore-substring Embed OBJ (string or character) at index IDX of STRING. Ftruncate-string-to-width Truncate string STR to end at column END-COLUMN. The optional 2nd arg START-COLUMN, if non-nil, specifies the starting column; that means to return the characters occupying columns START-COLUMN ... END-COLUMN of STR. The optional 3rd arg PADDING, if non-nil, specifies a padding character to add at the end of the result if STR doesn't reach column END-COLUMN, or if END-COLUMN comes in the middle of a character in STR. PADDING is also added at the beginning of the result if column START-COLUMN appears in the middle of a character in STR. If PADDING is nil, no padding is added in these cases, so the resulting string may be narrower than END-COLUMN. Fmake-specifier-and-init Create and initialize a new specifier. This is a front-end onto `make-specifier' that allows you to create a specifier and add specs to it at the same time. TYPE specifies the specifier type. SPEC-LIST supplies the specification(s) to be added to the specifier. Normally, almost any reasonable abbreviation of the full spec-list form is accepted, and is converted to the full form; however, if optional argument DONT-CANONICALIZE is non-nil, this conversion is not performed, and the SPEC-LIST must already be in full form. See `canonicalize-spec-list'. Fmap-specifier Apply MS-FUNC to the specification(s) for MS-LOCALE in MS-SPECIFIER. If MS-LOCALE is a locale, MS-FUNC will be called for that locale. If MS-LOCALE is a locale type, MS-FUNC will be mapped over all locales of that type. If MS-LOCALE is 'all or nil, MS-FUNC will be mapped over all locales in MS-SPECIFIER. MS-FUNC is called with four arguments: the MS-SPECIFIER, the locale being mapped over, the inst-list for that locale, and the optional MS-MAPARG. If any invocation of MS-FUNC returns non-nil, the mapping will stop and the returned value becomes the value returned from `map-specifier'. Otherwise, `map-specifier' returns nil. Fcanonicalize-inst-pair Canonicalize the given INST-PAIR. SPECIFIER-TYPE specifies the type of specifier that this SPEC-LIST will be used for. Canonicalizing means converting to the full form for an inst-pair, i.e. `(TAG-SET . INSTANTIATOR)'. A single, untagged instantiator is given a tag set of nil (the empty set), and a single tag is converted into a tag set consisting only of that tag. If NOERROR is non-nil, signal an error if the inst-pair is invalid; otherwise return t. Fcanonicalize-inst-list Canonicalize the given INST-LIST (a list of inst-pairs). SPECIFIER-TYPE specifies the type of specifier that this INST-LIST will be used for. Canonicalizing means converting to the full form for an inst-list, i.e. `((TAG-SET . INSTANTIATOR) ...)'. This function accepts a single inst-pair or any abbreviation thereof or a list of (possibly abbreviated) inst-pairs. (See `canonicalize-inst-pair'.) If NOERROR is non-nil, signal an error if the inst-list is invalid; otherwise return t. Fcanonicalize-spec Canonicalize the given SPEC (a specification). SPECIFIER-TYPE specifies the type of specifier that this SPEC-LIST will be used for. Canonicalizing means converting to the full form for a spec, i.e. `(LOCALE (TAG-SET . INSTANTIATOR) ...)'. This function accepts a possibly abbreviated inst-list or a cons of a locale and a possibly abbreviated inst-list. (See `canonicalize-inst-list'.) If NOERROR is nil, signal an error if the specification is invalid; otherwise return t. Fcanonicalize-spec-list Canonicalize the given SPEC-LIST (a list of specifications). SPECIFIER-TYPE specifies the type of specifier that this SPEC-LIST will be used for. Canonicalizing means converting to the full form for a spec-list, i.e. `((LOCALE (TAG-SET . INSTANTIATOR) ...) ...)'. This function accepts a possibly abbreviated specification or a list of such things. (See `canonicalize-spec'.) This is the function used to convert spec-lists accepted by `set-specifier' and such into a form suitable for `add-spec-list-to-specifier'. This function tries extremely hard to resolve any ambiguities, and the built-in specifier types (font, image, toolbar, etc.) are designed so that there won't be any ambiguities. If NOERROR is nil, signal an error if the spec-list is invalid; otherwise return t. Fset-specifier Add a specification or specifications to SPECIFIER. This function adds a specification of VALUE in locale LOCALE. LOCALE indicates where this specification is active, and should be a buffer, a window, a frame, a device, or the symbol `global' to indicate that it applies everywhere. LOCALE usually defaults to `global' if omitted. VALUE is usually what is called an "instantiator" (which, roughly speaking, corresponds to the "value" of the property governed by SPECIFIER). The valid instantiators for SPECIFIER depend on the type of SPECIFIER (which you can determine using `specifier-type'). The specifier `scrollbar-width', for example, is of type `integer', meaning its valid instantiators are integers. The specifier governing the background color of the `default' face (you can retrieve this specifier using `(face-background 'default)') is of type `color', meaning its valid instantiators are strings naming colors and color-instance objects. For some types of specifiers, such as `image' and `toolbar', the instantiators can be very complex. Generally this is documented in the appropriate predicate function -- `color-specifier-p', `image-specifier-p', `toolbar-specifier-p', etc. NOTE: It does *not* work to give a VALUE of nil as a way of removing the specifications for a locale. Use `remove-specifier' instead. (And keep in mind that, if you omit the LOCALE argument to `remove-specifier', it removes *all* specifications! If you want to remove just the `global' specification, make sure to specify a LOCALE of `global'.) VALUE can also be a list of instantiators. This means basically, "try each one in turn until you get one that works". This allows you to give funky instantiators that may only work in some cases, and provide more normal backups for the other cases. (For example, you might like the color "darkseagreen2", but some X servers don't recognize this color, so you could provide a backup "forest green". Color TTY devices probably won't recognize this either, so you could provide a second backup "green". You'd do this by specifying this list of instantiators: '("darkseagreen2" "forest green" "green") VALUE can also be various more complicated forms; see below. Optional argument TAG-SET is a tag or a list of tags, to be associated with the VALUE. Tags are symbols (usually naming device types, such as `x' and `tty', or device classes, such as `color', `mono', and `grayscale'); specifying a TAG-SET restricts the scope of VALUE to devices that match all specified tags. (You can also create your own tags using `define-specifier-tag', and use them to identify specifications added by you, so you can remove them later.) Optional argument HOW-TO-ADD should be either nil or one of the symbols `prepend', `append', `remove-tag-set-prepend', `remove-tag-set-append', `remove-locale', `remove-locale-type', or `remove-all'. This specifies what to do with existing specifications in LOCALE (and possibly elsewhere in the specifier). Most of the time, you do not need to worry about this argument; the default behavior of `remove-tag-set-prepend' is usually fine. See `copy-specifier' and `add-spec-to-specifier' for a full description of what each of these means. VALUE can actually be anything acceptable to `canonicalize-spec-list'; this includes, among other things: -- a cons of a locale and an instantiator (or list of instantiators) -- a cons of a tag or tag-set and an instantiator (or list of instantiators) -- a cons of a locale and the previous type of item -- a list of one or more of any of the previous types of items However, in these cases, you cannot give a LOCALE or TAG-SET, because they do not make sense. (You will probably get an error if you try this.) Finally, VALUE can itself be a specifier (of the same type as SPECIFIER), if you want to copy specifications from one specifier to another; this is equivalent to calling `copy-specifier', and LOCALE, TAG-SET, and HOW-TO-ADD have the same semantics as with that function. Note that `set-specifier' is exactly complementary to `specifier-specs' except in the case where SPECIFIER has no specs at all in it but nil is a valid instantiator (in that case, `specifier-specs' will return nil (meaning no specs) and `set-specifier' will interpret the `nil' as meaning "I'm adding a global instantiator and its value is `nil'"), or in strange cases where there is an ambiguity between a spec-list and an inst-list, etc. (The built-in specifier types are designed in such a way as to avoid any such ambiguities.) NOTE: If you want to work with spec-lists, you should probably not use either `set-specifier' or `specifier-specs', but should use the lower-level functions `add-spec-list-to-specifier' and `specifier-spec-list'. These functions always work with fully-qualified spec-lists; thus, there is no possibility for ambiguity and no need to go through the function `canonicalize-spec-list', which is potentially time-consuming. Vbuilt-in-face-specifiers A list of the built-in face properties that are specifiers. Fface-property Return FACE's value of the given PROPERTY. If LOCALE is omitted, the FACE's actual value for PROPERTY will be returned. For built-in properties, this will be a specifier object of a type appropriate to the property (e.g. a font or color specifier). For other properties, this could be anything. If LOCALE is supplied, then instead of returning the actual value, the specification(s) for the given locale or locale type will be returned. This will only work if the actual value of PROPERTY is a specifier (this will always be the case for built-in properties, but not or not may apply to user-defined properties). If the actual value of PROPERTY is not a specifier, this value will simply be returned regardless of LOCALE. The return value will be a list of instantiators (e.g. strings specifying a font or color name), or a list of specifications, each of which is a cons of a locale and a list of instantiators. Specifically, if LOCALE is a particular locale (a buffer, window, frame, device, or 'global), a list of instantiators for that locale will be returned. Otherwise, if LOCALE is a locale type (one of the symbols 'buffer, 'window, 'frame, or 'device), the specifications for all locales of that type will be returned. Finally, if LOCALE is 'all, the specifications for all locales of all types will be returned. The specifications in a specifier determine what the value of PROPERTY will be in a particular "domain" or set of circumstances, which is typically a particular Emacs window along with the buffer it contains and the frame and device it lies within. The value is derived from the instantiator associated with the most specific locale (in the order buffer, window, frame, device, and 'global) that matches the domain in question. In other words, given a domain (i.e. an Emacs window, usually), the specifier for PROPERTY will first be searched for a specification whose locale is the buffer contained within that window; then for a specification whose locale is the window itself; then for a specification whose locale is the frame that the window is contained within; etc. The first instantiator that is valid for the domain (usually this means that the instantiator is recognized by the device [i.e. the X server or TTY device] that the domain is on. The function `face-property-instance' actually does all this, and is used to determine how to display the face. See `set-face-property' for the built-in property-names. Fconvert-face-property-into-specifier Convert PROPERTY on FACE into a specifier, if it's not already. Fface-property-instance Return the instance of FACE's PROPERTY in the specified DOMAIN. Under most circumstances, DOMAIN will be a particular window, and the returned instance describes how the specified property actually is displayed for that window and the particular buffer in it. Note that this may not be the same as how the property appears when the buffer is displayed in a different window or frame, or how the property appears in the same window if you switch to another buffer in that window; and in those cases, the returned instance would be different. The returned instance will typically be a color-instance, font-instance, or pixmap-instance object, and you can query it using the appropriate object-specific functions. For example, you could use `color-instance-rgb-components' to find out the RGB (red, green, and blue) components of how the 'background property of the 'highlight face is displayed in a particular window. The results might be different from the results you would get for another window (perhaps the user specified a different color for the frame that window is on; or perhaps the same color was specified but the window is on a different X server, and that X server has different RGB values for the color from this one). DOMAIN defaults to the selected window if omitted. DOMAIN can be a frame or device, instead of a window. The value returned for a such a domain is used in special circumstances when a more specific domain does not apply; for example, a frame value might be used for coloring a toolbar, which is conceptually attached to a frame rather than a particular window. The value is also useful in determining what the value would be for a particular window within the frame or device, if it is not overridden by a more specific specification. If PROPERTY does not name a built-in property, its value will simply be returned unless it is a specifier object, in which case it will be instanced using `specifier-instance'. Optional arguments DEFAULT and NO-FALLBACK are the same as in `specifier-instance'. Fface-property-matching-instance Return the instance of FACE's PROPERTY matching MATCHSPEC in DOMAIN. Currently the only useful value for MATCHSPEC is a charset, when used in conjunction with the face's font; this allows you to retrieve a font that can be used to display a particular charset, rather than just any font. Other than MATCHSPEC, this function is identical to `face-property-instance'. See also `specifier-matching-instance' for a fuller description of the matching process. Fset-face-property Change a property of a FACE. NOTE: If you want to remove a property from a face, use `remove-face-property' rather than attempting to set a value of nil for the property. For built-in properties, the actual value of the property is a specifier and you cannot change this; but you can change the specifications within the specifier, and that is what this function will do. For user-defined properties, you can use this function to either change the actual value of the property or, if this value is a specifier, change the specifications within it. If PROPERTY is a built-in property, the specifications to be added to this property can be supplied in many different ways: -- If VALUE is a simple instantiator (e.g. a string naming a font or color) or a list of instantiators, then the instantiator(s) will be added as a specification of the property for the given LOCALE (which defaults to 'global if omitted). -- If VALUE is a list of specifications (each of which is a cons of a locale and a list of instantiators), then LOCALE must be nil (it does not make sense to explicitly specify a locale in this case), and specifications will be added as given. -- If VALUE is a specifier (as would be returned by `face-property' if no LOCALE argument is given), then some or all of the specifications in the specifier will be added to the property. In this case, the function is really equivalent to `copy-specifier' and LOCALE has the same semantics (if it is a particular locale, the specification for the locale will be copied; if a locale type, specifications for all locales of that type will be copied; if nil or 'all, then all specifications will be copied). HOW-TO-ADD should be either nil or one of the symbols 'prepend, 'append, 'remove-tag-set-prepend, 'remove-tag-set-append, 'remove-locale, 'remove-locale-type, or 'remove-all. See `copy-specifier' and `add-spec-to-specifier' for a description of what each of these means. Most of the time, you do not need to worry about this argument; the default behavior usually is fine. In general, it is OK to pass an instance object (e.g. as returned by `face-property-instance') as an instantiator in place of an actual instantiator. In such a case, the instantiator used to create that instance object will be used (for example, if you set a font-instance object as the value of the 'font property, then the font name used to create that object will be used instead). If some cases, however, doing this conversion does not make sense, and this will be noted in the documentation for particular types of instance objects. If PROPERTY is not a built-in property, then this function will simply set its value if LOCALE is nil. However, if LOCALE is given, then this function will attempt to add VALUE as the instantiator for the given LOCALE, using `add-spec-to-specifier'. If the value of the property is not a specifier, it will automatically be converted into a 'generic specifier. The following symbols have predefined meanings: foreground The foreground color of the face. For valid instantiators, see `color-specifier-p'. background The background color of the face. For valid instantiators, see `color-specifier-p'. font The font used to display text covered by this face. For valid instantiators, see `font-specifier-p'. display-table The display table of the face. This should be a vector of 256 elements. background-pixmap The pixmap displayed in the background of the face. Only used by faces on X devices. For valid instantiators, see `image-specifier-p'. underline Underline all text covered by this face. For valid instantiators, see `face-boolean-specifier-p'. strikethru Draw a line through all text covered by this face. For valid instantiators, see `face-boolean-specifier-p'. highlight Highlight all text covered by this face. Only used by faces on TTY devices. For valid instantiators, see `face-boolean-specifier-p'. dim Dim all text covered by this face. Only used by faces on TTY devices. For valid instantiators, see `face-boolean-specifier-p'. blinking Blink all text covered by this face. Only used by faces on TTY devices. For valid instantiators, see `face-boolean-specifier-p'. reverse Reverse the foreground and background colors. Only used by faces on TTY devices. For valid instantiators, see `face-boolean-specifier-p'. doc-string Description of what the face's normal use is. NOTE: This is not a specifier, unlike all the other built-in properties, and cannot contain locale-specific values. Fremove-face-property Remove a property from a face. For built-in properties, this is analogous to `remove-specifier'. See `remove-specifier' for the meaning of the LOCALE, TAG-SET, and EXACT-P arguments. Freset-face Clear all existing built-in specifications from FACE. This makes FACE inherit all its display properties from 'default. WARNING: Be absolutely sure you want to do this!!! It is a dangerous operation and is not undoable. The arguments LOCALE, TAG-SET and EXACT-P are the same as for `remove-specifier'. Fset-face-parent Set the parent of FACE to PARENT, for all properties. This makes all properties of FACE inherit from PARENT. Fface-doc-string Return the documentation string for FACE. Fset-face-doc-string Change the documentation string of FACE to DOC-STRING. Fface-font-name Return the font name of the given face, or nil if it is unspecified. DOMAIN is as in `face-font-instance'. Fface-font Return the font of the given face, or nil if it is unspecified. FACE may be either a face object or a symbol representing a face. LOCALE may be a locale (the instantiators for that particular locale will be returned), a locale type (the specifications for all locales of that type will be returned), 'all (all specifications will be returned), or nil (the actual specifier object will be returned). See `face-property' for more information. Fface-font-instance Return the instance of the given face's font in the given domain. FACE may be either a face object or a symbol representing a face. Normally DOMAIN will be a window or nil (meaning the selected window), and an instance object describing how the font appears in that particular window and buffer will be returned. See `face-property-instance' for more information. Fset-face-font Change the font of the given face. FACE may be either a face object or a symbol representing a face. FONT should be an instantiator (see `font-specifier-p'), a list of instantiators, an alist of specifications (each mapping a locale to an instantiator list), or a font specifier object. If FONT is an alist, LOCALE must be omitted. If FONT is a specifier object, LOCALE can be a locale, a locale type, 'all, or nil; see `copy-specifier' for its semantics. Otherwise LOCALE specifies the locale under which the specified instantiator(s) will be added, and defaults to 'global. See `set-face-property' for more information. Fface-foreground Return the foreground of the given face, or nil if it is unspecified. FACE may be either a face object or a symbol representing a face. LOCALE may be a locale (the instantiators for that particular locale will be returned), a locale type (the specifications for all locales of that type will be returned), 'all (all specifications will be returned), or nil (the actual specifier object will be returned). See `face-property' for more information. Fface-foreground-instance Return the instance of the given face's foreground in the given domain. FACE may be either a face object or a symbol representing a face. Normally DOMAIN will be a window or nil (meaning the selected window), and an instance object describing how the foreground appears in that particular window and buffer will be returned. See `face-property-instance' for more information. Fface-foreground-name Return the name of the given face's foreground color in the given domain. FACE may be either a face object or a symbol representing a face. Normally DOMAIN will be a window or nil (meaning the selected window), and an instance object describing how the background appears in that particular window and buffer will be returned. See `face-property-instance' for more information. Fset-face-foreground Change the foreground of the given face. FACE may be either a face object or a symbol representing a face. COLOR should be an instantiator (see `color-specifier-p'), a list of instantiators, an alist of specifications (each mapping a locale to an instantiator list), or a color specifier object. If COLOR is an alist, LOCALE must be omitted. If COLOR is a specifier object, LOCALE can be a locale, a locale type, 'all, or nil; see `copy-specifier' for its semantics. Otherwise LOCALE specifies the locale under which the specified instantiator(s) will be added, and defaults to 'global. See `set-face-property' for more information. Fface-background Return the background of the given face, or nil if it is unspecified. FACE may be either a face object or a symbol representing a face. LOCALE may be a locale (the instantiators for that particular locale will be returned), a locale type (the specifications for all locales of that type will be returned), 'all (all specifications will be returned), or nil (the actual specifier object will be returned). See `face-property' for more information. Fface-background-instance Return the instance of the given face's background in the given domain. FACE may be either a face object or a symbol representing a face. Normally DOMAIN will be a window or nil (meaning the selected window), and an instance object describing how the background appears in that particular window and buffer will be returned. See `face-property-instance' for more information. Fface-background-name Return the name of the given face's background color in the given domain. FACE may be either a face object or a symbol representing a face. Normally DOMAIN will be a window or nil (meaning the selected window), and an instance object describing how the background appears in that particular window and buffer will be returned. See `face-property-instance' for more information. Fset-face-background Change the background of the given face. FACE may be either a face object or a symbol representing a face. COLOR should be an instantiator (see `color-specifier-p'), a list of instantiators, an alist of specifications (each mapping a locale to an instantiator list), or a color specifier object. If COLOR is an alist, LOCALE must be omitted. If COLOR is a specifier object, LOCALE can be a locale, a locale type, 'all, or nil; see `copy-specifier' for its semantics. Otherwise LOCALE specifies the locale under which the specified instantiator(s) will be added, and defaults to 'global. See `set-face-property' for more information. Fface-background-pixmap Return the background pixmap of the given face, or nil if it is unspecified. This property is only used on X devices. FACE may be either a face object or a symbol representing a face. LOCALE may be a locale (the instantiators for that particular locale will be returned), a locale type (the specifications for all locales of that type will be returned), 'all (all specifications will be returned), or nil (the actual specifier object will be returned). See `face-property' for more information. Fface-background-pixmap-instance Return the instance of the given face's background pixmap in the given domain. FACE may be either a face object or a symbol representing a face. Normally DOMAIN will be a window or nil (meaning the selected window), and an instance object describing how the background appears in that particular window and buffer will be returned. See `face-property-instance' for more information. Fset-face-background-pixmap Change the background pixmap of the given face. This property is only used on X devices. FACE may be either a face object or a symbol representing a face. PIXMAP should be an instantiator (see `image-specifier-p'), a list of instantiators, an alist of specifications (each mapping a locale to an instantiator list), or an image specifier object. If PIXMAP is an alist, LOCALE must be omitted. If PIXMAP is a specifier object, LOCALE can be a locale, a locale type, 'all, or nil; see `copy-specifier' for its semantics. Otherwise LOCALE specifies the locale under which the specified instantiator(s) will be added, and defaults to 'global. See `set-face-property' for more information. Fface-display-table Return the display table of the given face. A vector (as returned by `make-display-table') will be returned. LOCALE may be a locale (the instantiators for that particular locale will be returned), a locale type (the specifications for all locales of that type will be returned), 'all (all specifications will be returned), or nil (the actual specifier object will be returned). See `face-property' for more information. Fface-display-table-instance Return the instance of FACE's display table in DOMAIN. A vector (as returned by `make-display-table') will be returned. See `face-property-instance' for the semantics of the DOMAIN argument. Fset-face-display-table Change the display table of the given face. DISPLAY-TABLE should be a vector as returned by `make-display-table'. See `set-face-property' for the semantics of the LOCALE, TAG-SET, and HOW-TO-ADD arguments. Fface-underline-p Return whether the given face is underlined. See `face-property-instance' for the semantics of the DOMAIN argument. Fset-face-underline-p Change whether the given face is underlined. UNDERLINE-P is normally a face-boolean instantiator; see `face-boolean-specifier-p'. See `set-face-property' for the semantics of the LOCALE, TAG-SET, and HOW-TO-ADD arguments. Fface-strikethru-p Return whether the given face is strikethru-d (i.e. struck through). See `face-property-instance' for the semantics of the DOMAIN argument. Fset-face-strikethru-p Change whether the given face is strikethru-d (i.e. struck through). STRIKETHRU-P is normally a face-boolean instantiator; see `face-boolean-specifier-p'. See `set-face-property' for the semantics of the LOCALE, TAG-SET, and HOW-TO-ADD arguments. Fface-highlight-p Return whether the given face is highlighted (TTY domains only). See `face-property-instance' for the semantics of the DOMAIN argument. Fset-face-highlight-p Change whether the given face is highlighted (TTY locales only). HIGHLIGHT-P is normally a face-boolean instantiator; see `face-boolean-specifier-p'. See `set-face-property' for the semantics of the LOCALE, TAG-SET, and HOW-TO-ADD arguments. Fface-dim-p Return whether the given face is dimmed (TTY domains only). See `face-property-instance' for the semantics of the DOMAIN argument. Fset-face-dim-p Change whether the given face is dimmed (TTY locales only). DIM-P is normally a face-boolean instantiator; see `face-boolean-specifier-p'. See `set-face-property' for the semantics of the LOCALE, TAG-SET, and HOW-TO-ADD arguments. Fface-blinking-p Return whether the given face is blinking (TTY domains only). See `face-property-instance' for the semantics of the DOMAIN argument. Fset-face-blinking-p Change whether the given face is blinking (TTY locales only). BLINKING-P is normally a face-boolean instantiator; see `face-boolean-specifier-p'. See `set-face-property' for the semantics of the LOCALE, TAG-SET, and HOW-TO-ADD arguments. Fface-reverse-p Return whether the given face is reversed (TTY domains only). See `face-property-instance' for the semantics of the DOMAIN argument. Fset-face-reverse-p Change whether the given face is reversed (TTY locales only). REVERSE-P is normally a face-boolean instantiator; see `face-boolean-specifier-p'. See `set-face-property' for the semantics of the LOCALE, TAG-SET, and HOW-TO-ADD arguments. Fface-equal True if the given faces will display in the same way. See `face-property-instance' for the semantics of the DOMAIN argument. Fface-differs-from-default-p True if the given face will display differently from the default face. See `face-property-instance' for the semantics of the DOMAIN argument. Ffrob-face-property Change the specifier for FACE's PROPERTY according to FUNC, in LOCALE. This function is ugly and messy and is primarily used as an internal helper function for `make-face-bold' et al., so you probably don't want to use it or read the rest of the documentation. But if you do ... FUNC should be a function of two arguments (an instance and a device) that returns a modified name that is valid for the given device. If LOCALE specifies a valid domain (i.e. a window, frame, or device), this function instantiates the specifier over that domain, applies FUNC to the resulting instance, and adds the result back as an instantiator for that locale. Otherwise, LOCALE should be a locale, locale type, or 'all (defaults to 'all if omitted). For each specification thusly included: if the locale given is a valid domain, FUNC will be iterated over all valid instantiators for the device of the domain until a non-nil result is found (if there is no such result, the first valid instantiator is used), and that result substituted for the specification; otherwise, the process just outlined is iterated over each existing device and the concatenated results substituted for the specification. Fmake-face-bold Make the face bold, if possible. This will attempt to make the font bold for X locales and will set the highlight flag for TTY locales. If LOCALE is nil, omitted, or `all', this will attempt to frob all font specifications for FACE to make them appear bold. Similarly, if LOCALE is a locale type, this frobs all font specifications for locales of that type. If LOCALE is a particular locale, what happens depends on what sort of locale is given. If you gave a device, frame, or window, then it's always possible to determine what the font actually will be, so this is determined and the resulting font is frobbed and added back as a specification for this locale. If LOCALE is a buffer, however, you can't determine what the font will actually be unless there's actually a specification given for that particular buffer (otherwise, it depends on what window and frame the buffer appears in, and might not even be well-defined if the buffer appears multiple times in different places); therefore you will get an error unless there's a specification for the buffer. Finally, in some cases (specifically, when LOCALE is not a locale type), if the frobbing didn't actually make the font look any different (this happens, for example, if your font specification is already bold or has no bold equivalent), and currently looks like the font of the 'default face, it is set to inherit from the 'bold face. This is kludgy but it makes `make-face-bold' have more intuitive behavior in many circumstances. Fmake-face-italic Make the face italic, if possible. This will attempt to make the font italic for X locales and will set the underline flag for TTY locales. See `make-face-bold' for the semantics of the LOCALE argument and for more specifics on exactly how this function works. Fmake-face-bold-italic Make the face bold and italic, if possible. This will attempt to make the font bold-italic for X locales and will set the highlight and underline flags for TTY locales. See `make-face-bold' for the semantics of the LOCALE argument and for more specifics on exactly how this function works. Fmake-face-unbold Make the face non-bold, if possible. This will attempt to make the font non-bold for X locales and will unset the highlight flag for TTY locales. See `make-face-bold' for the semantics of the LOCALE argument and for more specifics on exactly how this function works. Fmake-face-unitalic Make the face non-italic, if possible. This will attempt to make the font non-italic for X locales and will unset the underline flag for TTY locales. See `make-face-bold' for the semantics of the LOCALE argument and for more specifics on exactly how this function works. Fmake-face-smaller Make the font of the given face be smaller, if possible. LOCALE works as in `make-face-bold' et al., but the ``inheriting- from-the-bold-face'' operations described there are not done because they don't make sense in this context. Fmake-face-larger Make the font of the given face be larger, if possible. See `make-face-smaller' for the semantics of the LOCALE argument. Finvert-face Swap the foreground and background colors of the face. Fface-ascent Return the ascent of a face. See `face-property-instance' for the semantics of the DOMAIN argument. Fface-descent Return the descent of a face. See `face-property-instance' for the semantics of the DOMAIN argument. Fface-width Return the width of a face. See `face-property-instance' for the semantics of the DOMAIN argument. Fface-height Return the height of a face. See `face-property-instance' for the semantics of the DOMAIN argument. Fface-proportional-p Return whether FACE is proportional. See `face-property-instance' for the semantics of the DOMAIN argument. Fget-frame-background-mode Detect background mode for FRAME. Fextract-custom-frame-properties Return a plist with the frame properties of FRAME used by custom. Fface-spec-set Set FACE's face attributes according to the first matching entry in SPEC. If optional FRAME is non-nil, set it for that frame only. If it is nil, then apply SPEC to each frame individually. See `defface' for information about SPEC. Fface-display-set Set FACE to the attributes to the first matching entry in SPEC. Iff optional FRAME is non-nil, set it for that frame only. See `defface' for information about SPEC. Vdefault-custom-frame-properties The frame properties used for the global faces. Frames not matching these propertiess should have frame local faces. The value should be nil, if uninitialized, or a plist otherwise. See `defface' for a list of valid keys and values for the plist. Fget-custom-frame-properties Return a plist with the frame properties of FRAME used by custom. If FRAME is nil, return the default frame properties. Fface-spec-set-match-display Non-nil iff DISPLAY matches FRAME. DISPLAY is part of a spec such as can be used in `defface'. If FRAME is nil, the current FRAME is used. Frelevant-custom-frames List of frames whose custom properties differ from the default. Finitialize-custom-faces Initialize all custom faces for FRAME. If FRAME is nil or omitted, initialize them for all frames. Fcustom-initialize-frame Initialize frame-local custom faces for FRAME if necessary. Fmake-empty-face Like `make-face', but doesn't query the resource database. Finit-face-from-resources Initialize FACE from the resource database. If LOCALE is specified, it should be a frame, device, or 'global, and the face will be resourced over that locale. Otherwise, the face will be resourced over all possible locales (i.e. all frames, all devices, and 'global). Finit-other-random-faces Initializes the colors and fonts of the bold, italic, bold-italic, zmacs-region, list-mode-item-selected, highlight, primary-selection, secondary-selection, and isearch faces when each device is created. If you want to add code to do stuff like this, use the create-device-hook. Fset-face-stipple Change the stipple pixmap of face FACE to PIXMAP. This is an Emacs compatibility function; consider using set-face-background-pixmap instead. PIXMAP should be a string, the name of a file of pixmap data. The directories listed in the `x-bitmap-file-path' variable are searched. Alternatively, PIXMAP may be a list of the form (WIDTH HEIGHT DATA) where WIDTH and HEIGHT are the size in pixels, and DATA is a string, containing the raw bits of the bitmap. XBM data is expected in this case, other types of image data will not work. If the optional FRAME argument is provided, change only in that frame; otherwise change each frame. Fmake-image-specifier Create a new `image' specifier object with the given specification list. SPEC-LIST can be a list of specifications (each of which is a cons of a locale and a list of instantiators), a single instantiator, or a list of instantiators. See `make-specifier' for more information about specifiers. Vbuilt-in-glyph-specifiers A list of the built-in face properties that are specifiers. Fglyph-property Return GLYPH's value of the given PROPERTY. If LOCALE is omitted, the GLYPH's actual value for PROPERTY will be returned. For built-in properties, this will be a specifier object of a type appropriate to the property (e.g. a font or color specifier). For other properties, this could be anything. If LOCALE is supplied, then instead of returning the actual value, the specification(s) for the given locale or locale type will be returned. This will only work if the actual value of PROPERTY is a specifier (this will always be the case for built-in properties, but not or not may apply to user-defined properties). If the actual value of PROPERTY is not a specifier, this value will simply be returned regardless of LOCALE. The return value will be a list of instantiators (e.g. strings specifying a font or color name), or a list of specifications, each of which is a cons of a locale and a list of instantiators. Specifically, if LOCALE is a particular locale (a buffer, window, frame, device, or 'global), a list of instantiators for that locale will be returned. Otherwise, if LOCALE is a locale type (one of the symbols 'buffer, 'window, 'frame, 'device, 'device-class, or 'device-type), the specifications for all locales of that type will be returned. Finally, if LOCALE is 'all, the specifications for all locales of all types will be returned. The specifications in a specifier determine what the value of PROPERTY will be in a particular "domain" or set of circumstances, which is typically a particular Emacs window along with the buffer it contains and the frame and device it lies within. The value is derived from the instantiator associated with the most specific locale (in the order buffer, window, frame, device, and 'global) that matches the domain in question. In other words, given a domain (i.e. an Emacs window, usually), the specifier for PROPERTY will first be searched for a specification whose locale is the buffer contained within that window; then for a specification whose locale is the window itself; then for a specification whose locale is the frame that the window is contained within; etc. The first instantiator that is valid for the domain (usually this means that the instantiator is recognized by the device [i.e. the X server or TTY device] that the domain is on. The function `glyph-property-instance' actually does all this, and is used to determine how to display the glyph. See `set-glyph-property' for the built-in property-names. Fconvert-glyph-property-into-specifier Convert PROPERTY on GLYPH into a specifier, if it's not already. Fglyph-property-instance Return the instance of GLYPH's PROPERTY in the specified DOMAIN. Under most circumstances, DOMAIN will be a particular window, and the returned instance describes how the specified property actually is displayed for that window and the particular buffer in it. Note that this may not be the same as how the property appears when the buffer is displayed in a different window or frame, or how the property appears in the same window if you switch to another buffer in that window; and in those cases, the returned instance would be different. DOMAIN defaults to the selected window if omitted. DOMAIN can be a frame or device, instead of a window. The value returned for a such a domain is used in special circumstances when a more specific domain does not apply; for example, a frame value might be used for coloring a toolbar, which is conceptually attached to a frame rather than a particular window. The value is also useful in determining what the value would be for a particular window within the frame or device, if it is not overridden by a more specific specification. If PROPERTY does not name a built-in property, its value will simply be returned unless it is a specifier object, in which case it will be instanced using `specifier-instance'. Optional arguments DEFAULT and NO-FALLBACK are the same as in `specifier-instance'. Fset-glyph-property Change a property of a GLYPH. NOTE: If you want to remove a property from a glyph, use `remove-glyph-property' rather than attempting to set a value of nil for the property. For built-in properties, the actual value of the property is a specifier and you cannot change this; but you can change the specifications within the specifier, and that is what this function will do. For user-defined properties, you can use this function to either change the actual value of the property or, if this value is a specifier, change the specifications within it. If PROPERTY is a built-in property, the specifications to be added to this property can be supplied in many different ways: -- If VALUE is a simple instantiator (e.g. a string naming a font or color) or a list of instantiators, then the instantiator(s) will be added as a specification of the property for the given LOCALE (which defaults to 'global if omitted). -- If VALUE is a list of specifications (each of which is a cons of a locale and a list of instantiators), then LOCALE must be nil (it does not make sense to explicitly specify a locale in this case), and specifications will be added as given. -- If VALUE is a specifier (as would be returned by `glyph-property' if no LOCALE argument is given), then some or all of the specifications in the specifier will be added to the property. In this case, the function is really equivalent to `copy-specifier' and LOCALE has the same semantics (if it is a particular locale, the specification for the locale will be copied; if a locale type, specifications for all locales of that type will be copied; if nil or 'all, then all specifications will be copied). HOW-TO-ADD should be either nil or one of the symbols 'prepend, 'append, 'remove-tag-set-prepend, 'remove-tag-set-append, 'remove-locale, 'remove-locale-type, or 'remove-all. See `copy-specifier' and `add-spec-to-specifier' for a description of what each of these means. Most of the time, you do not need to worry about this argument; the default behavior usually is fine. In general, it is OK to pass an instance object (e.g. as returned by `glyph-property-instance') as an instantiator in place of an actual instantiator. In such a case, the instantiator used to create that instance object will be used (for example, if you set a font-instance object as the value of the 'font property, then the font name used to create that object will be used instead). If some cases, however, doing this conversion does not make sense, and this will be noted in the documentation for particular types of instance objects. If PROPERTY is not a built-in property, then this function will simply set its value if LOCALE is nil. However, if LOCALE is given, then this function will attempt to add VALUE as the instantiator for the given LOCALE, using `add-spec-to-specifier'. If the value of the property is not a specifier, it will automatically be converted into a 'generic specifier. The following symbols have predefined meanings: image The image used to display the glyph. baseline Percent above baseline that glyph is to be displayed. contrib-p Whether the glyph contributes to the height of the line it's on. face Face of this glyph (*not* a specifier). Fremove-glyph-property Remove a property from a glyph. For built-in properties, this is analogous to `remove-specifier'. See `remove-specifier' for the meaning of the LOCALE, TAG-SET, and EXACT-P arguments. Fglyph-face Return the face of GLYPH. Fset-glyph-face Change the face of GLYPH to FACE. Fglyph-image Return the image of the given glyph, or nil if it is unspecified. LOCALE may be a locale (the instantiators for that particular locale will be returned), a locale type (the specifications for all locales of that type will be returned), 'all (all specifications will be returned), or nil (the actual specifier object will be returned). See `glyph-property' for more information. Fglyph-image-instance Return the instance of the given glyph's image in the given domain. Normally DOMAIN will be a window or nil (meaning the selected window), and an instance object describing how the image appears in that particular window and buffer will be returned. See `glyph-property-instance' for more information. Fset-glyph-image Change the image of the given glyph. SPEC should be an instantiator (a string or vector; see `image-specifier-p' for a description of possible values here), a list of (possibly tagged) instantiators, an alist of specifications (each mapping a locale to an instantiator list), or an image specifier object. If SPEC is an alist, LOCALE must be omitted. If SPEC is a specifier object, LOCALE can be a locale, a locale type, 'all, or nil; see `copy-specifier' for its semantics. Otherwise LOCALE specifies the locale under which the specified instantiator(s) will be added, and defaults to 'global. See `set-glyph-property' for more information. Fglyph-contrib-p Return whether GLYPH contributes to its line height. LOCALE may be a locale (the instantiators for that particular locale will be returned), a locale type (the specifications for all locales of that type will be returned), 'all (all specifications will be returned), or nil (the actual specifier object will be returned). See `glyph-property' for more information. Fglyph-contrib-p-instance Return the instance of the GLYPH's 'contrib-p property in the given domain. Normally DOMAIN will be a window or nil (meaning the selected window), and an instance object describing what the 'contrib-p property is in that particular window and buffer will be returned. See `glyph-property-instance' for more information. Fset-glyph-contrib-p Change the contrib-p of the given glyph. SPEC should be an instantiator (t or nil), a list of (possibly tagged) instantiators, an alist of specifications (each mapping a locale to an instantiator list), or a boolean specifier object. If SPEC is an alist, LOCALE must be omitted. If SPEC is a specifier object, LOCALE can be a locale, a locale type, 'all, or nil; see `copy-specifier' for its semantics. Otherwise LOCALE specifies the locale under which the specified instantiator(s) will be added, and defaults to 'global. See `set-glyph-property' for more information. Fglyph-baseline Return the baseline of the given glyph, or nil if it is unspecified. LOCALE may be a locale (the instantiators for that particular locale will be returned), a locale type (the specifications for all locales of that type will be returned), 'all (all specifications will be returned), or nil (the actual specifier object will be returned). See `glyph-property' for more information. Fglyph-baseline-instance Return the instance of the given glyph's baseline in the given domain. Normally DOMAIN will be a window or nil (meaning the selected window), and an integer or nil (specifying the baseline in that particular window and buffer) will be returned. See `glyph-property-instance' for more information. Fset-glyph-baseline Change the baseline of the given glyph. SPEC should be an instantiator (an integer [a percentage above the baseline of the line the glyph is on] or nil), a list of (possibly tagged) instantiators, an alist of specifications (each mapping a locale to an instantiator list), or a generic specifier object. If SPEC is an alist, LOCALE must be omitted. If SPEC is a specifier object, LOCALE can be a locale, a locale type, 'all, or nil; see `copy-specifier' for its semantics. Otherwise LOCALE specifies the locale under which the specified instantiator(s) will be added, and defaults to 'global. See `set-glyph-property' for more information. Fmake-glyph Create a new `glyph' object of type TYPE. TYPE should be one of `buffer' (used for glyphs in an extent, the modeline, the toolbar, or elsewhere in a buffer), `pointer' (used for the mouse-pointer), or `icon' (used for a frame's icon), and defaults to `buffer'. SPEC-LIST is used to initialize the glyph's image. It is typically an image instantiator (a string or a vector; see `image-specifier-p' for a detailed description of the valid image instantiators), but can also be a list of such instantiators (each one in turn is tried until an image is successfully produced), a cons of a locale (frame, buffer, etc.) and an instantiator, a list of such conses, or any other form accepted by `canonicalize-spec-list'. See `make-specifier' for more information about specifiers. Fbuffer-glyph-p t if OBJECT is a glyph of type `buffer'. Fpointer-glyph-p t if OBJECT is a glyph of type `pointer'. Ficon-glyph-p t if OBJECT is a glyph of type `icon'. Fmake-pointer-glyph Create a new `pointer-glyph' object with the given specification list. This is equivalent to calling `make-glyph' and specifying a type of `pointer'. SPEC-LIST is used to initialize the glyph's image. It is typically an image instantiator (a string or a vector; see `image-specifier-p' for a detailed description of the valid image instantiators), but can also be a list of such instantiators (each one in turn is tried until an image is successfully produced), a cons of a locale (frame, buffer, etc.) and an instantiator, a list of such conses, or any other form accepted by `canonicalize-spec-list'. See `make-specifier' for more information about specifiers. You can also create a glyph with an empty SPEC-LIST and add image instantiators afterwards using `set-glyph-image'. Fmake-icon-glyph Create a new `icon-glyph' object with the given specification list. This is equivalent to calling `make-glyph' and specifying a type of `icon'. SPEC-LIST is used to initialize the glyph's image. It is typically an image instantiator (a string or a vector; see `image-specifier-p' for a detailed description of the valid image instantiators), but can also be a list of such instantiators (each one in turn is tried until an image is successfully produced), a cons of a locale (frame, buffer, etc.) and an instantiator, a list of such conses, or any other form accepted by `canonicalize-spec-list'. See `make-specifier' for more information about specifiers. You can also create a glyph with an empty SPEC-LIST and add image instantiators afterwards using `set-glyph-image'. Fnothing-image-instance-p t if OBJECT is an image instance of type `nothing'. Ftext-image-instance-p t if OBJECT is an image instance of type `text'. Fmono-pixmap-image-instance-p t if OBJECT is an image instance of type `mono-pixmap'. Fcolor-pixmap-image-instance-p t if OBJECT is an image instance of type `color-pixmap'. Fpointer-image-instance-p t if OBJECT is an image instance of type `pointer'. Fsubwindow-image-instance-p t if OBJECT is an image instance of type `subwindow'. Subwindows are not implemented in this version of XEmacs. Vtext-pointer-glyph *The shape of the mouse-pointer when over text. This is a glyph; use `set-glyph-image' to change it. Vnontext-pointer-glyph *The shape of the mouse-pointer when over a buffer, but not over text. This is a glyph; use `set-glyph-image' to change it. If unspecified in a particular domain, `text-pointer-glyph' is used. Vmodeline-pointer-glyph *The shape of the mouse-pointer when over the modeline. This is a glyph; use `set-glyph-image' to change it. If unspecified in a particular domain, `nontext-pointer-glyph' is used. Vselection-pointer-glyph *The shape of the mouse-pointer when over a selectable text region. This is a glyph; use `set-glyph-image' to change it. If unspecified in a particular domain, `text-pointer-glyph' is used. Vbusy-pointer-glyph *The shape of the mouse-pointer when XEmacs is busy. This is a glyph; use `set-glyph-image' to change it. If unspecified in a particular domain, the pointer is not changed when XEmacs is busy. Vtoolbar-pointer-glyph *The shape of the mouse-pointer when over a toolbar. This is a glyph; use `set-glyph-image' to change it. If unspecified in a particular domain, `nontext-pointer-glyph' is used. Fmake-font-specifier Create a new `font' specifier object with the given specification list. SPEC-LIST can be a list of specifications (each of which is a cons of a locale and a list of instantiators), a single instantiator, or a list of instantiators. See `make-specifier' for more information about specifiers. Ffont-name Return the name of the FONT in the specified DOMAIN, if any. FONT should be a font specifier object and DOMAIN is normally a window and defaults to the selected window if omitted. This is equivalent to using `specifier-instance' and applying `font-instance-name' to the result. See `make-specifier' for more information about specifiers. Ffont-ascent Return the ascent of the FONT in the specified DOMAIN, if any. FONT should be a font specifier object and DOMAIN is normally a window and defaults to the selected window if omitted. This is equivalent to using `specifier-instance' and applying `font-instance-ascent' to the result. See `make-specifier' for more information about specifiers. Ffont-descent Return the descent of the FONT in the specified DOMAIN, if any. FONT should be a font specifier object and DOMAIN is normally a window and defaults to the selected window if omitted. This is equivalent to using `specifier-instance' and applying `font-instance-descent' to the result. See `make-specifier' for more information about specifiers. Ffont-width Return the width of the FONT in the specified DOMAIN, if any. FONT should be a font specifier object and DOMAIN is normally a window and defaults to the selected window if omitted. This is equivalent to using `specifier-instance' and applying `font-instance-width' to the result. See `make-specifier' for more information about specifiers. Ffont-height Return the height of the FONT in the specified DOMAIN, if any. FONT should be a font specifier object and DOMAIN is normally a window and defaults to the selected window if omitted. This is equivalent to using `specifier-instance' and applying `font-instance-height' to the result. See `make-specifier' for more information about specifiers. Ffont-proportional-p Return whether FONT is proportional in the specified DOMAIN, if known. FONT should be a font specifier object and DOMAIN is normally a window and defaults to the selected window if omitted. This is equivalent to using `specifier-instance' and applying `font-instance-proportional-p' to the result. See `make-specifier' for more information about specifiers. Ffont-properties Return the properties of the FONT in the specified DOMAIN, if any. FONT should be a font specifier object and DOMAIN is normally a window and defaults to the selected window if omitted. This is equivalent to using `specifier-instance' and applying `font-instance-properties' to the result. See `make-specifier' for more information about specifiers. Ffont-truename Return the truename of the FONT in the specified DOMAIN, if any. FONT should be a font specifier object and DOMAIN is normally a window and defaults to the selected window if omitted. This is equivalent to using `specifier-instance' and applying `font-instance-truename' to the result. See `make-specifier' for more information about specifiers. Ffont-instance-height Return the height in pixels of FONT-INSTANCE. The returned value is the maximum height for all characters in the font, and is equivalent to the sum of the font instance's ascent and descent. Fmake-color-specifier Create a new `color' specifier object with the given specification list. SPEC-LIST can be a list of specifications (each of which is a cons of a locale and a list of instantiators), a single instantiator, or a list of instantiators. See `make-specifier' for a detailed description of how specifiers work. Fcolor-name Return the name of the COLOR in the specified DOMAIN, if any. COLOR should be a color specifier object and DOMAIN is normally a window and defaults to the selected window if omitted. This is equivalent to using `specifier-instance' and applying `color-instance-name' to the result. See `make-specifier' for more information about specifiers. Fcolor-rgb-components Return the RGB components of the COLOR in the specified DOMAIN, if any. COLOR should be a color specifier object and DOMAIN is normally a window and defaults to the selected window if omitted. This is equivalent to using `specifier-instance' and applying `color-instance-rgb-components' to the result. See `make-specifier' for more information about specifiers. Fmapcar-extents Applies FUNCTION to all extents which overlap a region in BUFFER-OR-STRING. The region is delimited by FROM and TO. FUNCTION is called with one argument, the extent. A list of the values returned by FUNCTION is returned. An optional PREDICATE may be used to further limit the extents over which FUNCTION is mapped. The optional arguments FLAGS, PROPERTY, and VALUE may also be used to control the extents passed to PREDICATE or FUNCTION. See also `map-extents'. Fextent-list Return a list of the extents in BUFFER-OR-STRING. BUFFER-OR-STRING defaults to the current buffer if omitted. FROM and TO can be used to limit the range over which extents are returned; if omitted, all extents in the buffer or string are returned. More specifically, if a range is specified using FROM and TO, only extents that overlap the range (i.e. begin or end inside of the range) are included in the list. FROM and TO default to the beginning and end of BUFFER-OR-STRING, respectively. FLAGS controls how end cases are treated. For a discussion of this, and exactly what ``overlap'' means, see `map-extents'. If you want to map a function over the extents in a buffer or string, consider using `map-extents' or `mapcar-extents' instead. Fextent-string Return the string delimited by the bounds of EXTENT. Fextent-descendants Return a list of all descendants of EXTENT, including EXTENT. This recursively applies `extent-children' to any children of EXTENT, until no more children can be found. Fset-extent-keymap Set EXTENT's `keymap' property to KEYMAP. Fextent-keymap Return EXTENT's `keymap' property. Fevent-console Return the console that EVENT occurred on. This will be nil for some types of events (e.g. eval events). Fevent-device Return the device that EVENT occurred on. This will be nil for some types of events (e.g. keyboard and eval events). Fevent-frame Return the frame that EVENT occurred on. This will be nil for some types of events (e.g. keyboard and eval events). Fevent-buffer Return the buffer of the window over which mouse event EVENT occurred. Return nil unless both (mouse-event-p EVENT) and (event-over-text-area-p EVENT) are non-nil. Fkey-press-event-p Return t if OBJECT is a key-press event. Fbutton-press-event-p Return t if OBJECT is a mouse button-press event. Fbutton-release-event-p Return t if OBJECT is a mouse button-release event. Fbutton-event-p Return t if OBJECT is a mouse button-press or button-release event. Fmotion-event-p Return t if OBJECT is a mouse motion event. Fmouse-event-p Return t if OBJECT is a mouse button-press, button-release or motion event. Fprocess-event-p Return t if OBJECT is a process-output event. Ftimeout-event-p Return t if OBJECT is a timeout event. Feval-event-p Return t if OBJECT is an eval event. Fmisc-user-event-p Return t if OBJECT is a misc-user event. A misc-user event is a user event that is not a keypress or mouse click; normally this means a menu selection or scrollbar action. Fevent-over-glyph-p Return t if OBJECT is a mouse event occurring over a glyph. Mouse events are events of type button-press, button-release or motion. Fkeyboard-translate Translate character or keysym FROM to TO at a low level. Multiple FROM-TO pairs may be specified. See `keyboard-translate-table' for more information. Fset-text-properties You should NEVER use this function. It is ideologically blasphemous. It is provided only to ease porting of broken FSF Emacs programs. Instead, use `remove-text-properties' to remove the specific properties you do not want. Completely replace properties of text from START to END. The third argument PROPS is the new property list. The optional fourth argument, BUFFER-OR-STRING, is the string or buffer containing the text. Fextent-properties-at Returns the properties of the character at the given position in OBJECT (a string or buffer) by merging the properties of overlapping extents. The returned value is a property list, some of which may be shared with other structures. You must not modify it. If POSITION is at the end of OBJECT, the value is nil. This returns all properties on all extents. See also `text-properties-at'. Ftext-properties-at Returns the properties of the character at the given position in OBJECT (a string or buffer) by merging the properties of overlapping extents. The returned value is a property list, some of which may be shared with other structures. You must not modify it. If POSITION is at the end of OBJECT, the value is nil. This returns only those properties added with `put-text-property'. See also `extent-properties-at'. Ftext-property-any Check text from START to END to see if PROP is ever `eq' to VALUE. If so, return the position of the first character whose PROP is `eq' to VALUE. Otherwise return nil. The optional fifth argument, BUFFER-OR-STRING, is the buffer or string containing the text and defaults to the current buffer. Ftext-property-not-all Check text from START to END to see if PROP is ever not `eq' to VALUE. If so, return the position of the first character whose PROP is not `eq' to VALUE. Otherwise, return nil. The optional fifth argument, BUFFER-OR-STRING, is the buffer or string containing the text and defaults to the current buffer. Fnext-property-change Return the position of next property change. Scans forward from POS in BUFFER-OR-STRING (defaults to the current buffer) until it finds a change in some text property, then returns the position of the change. Returns nil if the properties remain unchanged all the way to the end. If the value is non-nil, it is a position greater than POS, never equal. If the optional third argument LIMIT is non-nil, don't search past position LIMIT; return LIMIT if nothing is found before LIMIT. If two or more extents with conflicting non-nil values for a property overlap a particular character, it is undefined which value is considered to be the value of the property. (Note that this situation will not happen if you always use the text-property primitives.) Fprevious-property-change Return the position of previous property change. Scans backward from POS in BUFFER-OR-STRING (defaults to the current buffer) until it finds a change in some text property, then returns the position of the change. Returns nil if the properties remain unchanged all the way to the beginning. If the value is non-nil, it is a position less than POS, never equal. If the optional third argument LIMIT is non-nil, don't search back past position LIMIT; return LIMIT if nothing is found until LIMIT. If two or more extents with conflicting non-nil values for a property overlap a particular character, it is undefined which value is considered to be the value of the property. (Note that this situation will not happen if you always use the text-property primitives.) Ftext-property-bounds Return the bounds of property PROP at POS. This returns a cons (START . END) of the largest region of text containing POS which has a non-nil value for PROP. The return value is nil if POS does not have a non-nil value for PROP. OBJECT specifies the buffer or string to search in. Optional arg AT-FLAG controls what "at POS" means, and has the same meaning as for `extent-at'. Fnext-text-property-bounds Return the COUNTth bounded property region of property PROP after POS. If COUNT is less than zero, search backwards. This returns a cons (START . END) of the COUNTth maximal region of text that begins after POS (starts before POS) and has a non-nil value for PROP. If there aren't that many regions, nil is returned. OBJECT specifies the buffer or string to search in. Vshell-command-switch Switch used to have the shell execute its command line argument. Fstart-process-shell-command Start a program in a subprocess. Return the process object for it. Args are NAME BUFFER COMMAND &rest COMMAND-ARGS. NAME is name for process. It is modified if necessary to make it unique. BUFFER is the buffer or (buffer-name) to associate with the process. Process output goes at end of that buffer, unless you specify an output stream or filter function to handle the output. BUFFER may be also nil, meaning that this process is not associated with any buffer Third arg is command name, the name of a shell command. Remaining arguments are the arguments for the command. Wildcards and redirection are handled as usual in the shell. Fcall-process Call PROGRAM synchronously in separate process. The program's input comes from file INFILE (nil means `/dev/null'). Insert output in BUFFER before point; t means current buffer; nil for BUFFER means discard it; 0 means discard and don't wait. BUFFER can also have the form (REAL-BUFFER STDERR-FILE); in that case, REAL-BUFFER says what to do with standard output, as above, while STDERR-FILE says what to do with standard error in the child. STDERR-FILE may be nil (discard standard error output), t (mix it with ordinary output), or a file name string. Fourth arg DISPLAYP non-nil means redisplay buffer as output is inserted. Remaining arguments are strings passed as command arguments to PROGRAM. If BUFFER is 0, `call-process' returns immediately with value nil. Otherwise it waits for PROGRAM to terminate and returns a numeric exit status or a signal description string. If you quit, the process is killed with SIGINT, or SIGKILL if you quit again. Fcall-process-region Send text from START to END to a synchronous process running PROGRAM. Delete the text if fourth arg DELETEP is non-nil. Insert output in BUFFER before point; t means current buffer; nil for BUFFER means discard it; 0 means discard and don't wait. BUFFER can also have the form (REAL-BUFFER STDERR-FILE); in that case, REAL-BUFFER says what to do with standard output, as above, while STDERR-FILE says what to do with standard error in the child. STDERR-FILE may be nil (discard standard error output), t (mix it with ordinary output), or a file name string. Sixth arg DISPLAYP non-nil means redisplay buffer as output is inserted. Remaining args are passed to PROGRAM at startup as command args. If BUFFER is 0, returns immediately with value nil. Otherwise waits for PROGRAM to terminate and returns a numeric exit status or a signal description string. If you quit, the process is first killed with SIGINT, then with SIGKILL if you quit again before the process exits. Fshell-command Execute string COMMAND in inferior shell; display output, if any. If COMMAND ends in ampersand, execute it asynchronously. The output appears in the buffer `*Async Shell Command*'. That buffer is in shell mode. Otherwise, COMMAND is executed synchronously. The output appears in the buffer `*Shell Command Output*'. If the output is one line, it is displayed in the echo area *as well*, but it is nonetheless available in buffer `*Shell Command Output*', even though that buffer is not automatically displayed. If there is no output, or if output is inserted in the current buffer, then `*Shell Command Output*' is deleted. The optional second argument OUTPUT-BUFFER, if non-nil, says to put the output in some other buffer. If OUTPUT-BUFFER is a buffer or buffer name, put the output there. If OUTPUT-BUFFER is not a buffer and not nil, insert output in current buffer. (This cannot be done asynchronously.) In either case, the output is inserted after point (leaving mark after it). Fshell-command-on-region Execute string COMMAND in inferior shell with region as input. Normally display output (if any) in temp buffer `*Shell Command Output*'; Prefix arg means replace the region with it. The noninteractive arguments are START, END, COMMAND, OUTPUT-BUFFER, REPLACE. If REPLACE is non-nil, that means insert the output in place of text from START to END, putting point and mark around it. If the output is one line, it is displayed in the echo area, but it is nonetheless available in buffer `*Shell Command Output*' even though that buffer is not automatically displayed. If there is no output, or if output is inserted in the current buffer, then `*Shell Command Output*' is deleted. If the optional fourth argument OUTPUT-BUFFER is non-nil, that says to put the output in some other buffer. If OUTPUT-BUFFER is a buffer or buffer name, put the output there. If OUTPUT-BUFFER is not a buffer and not nil, insert output in the current buffer. In either case, the output is inserted after point (leaving mark after it). Fstart-process Start a program in a subprocess. Return the process object for it. Args are NAME BUFFER PROGRAM &rest PROGRAM-ARGS NAME is name for process. It is modified if necessary to make it unique. BUFFER is the buffer or (buffer-name) to associate with the process. Process output goes at end of that buffer, unless you specify an output stream or filter function to handle the output. BUFFER may be also nil, meaning that this process is not associated with any buffer Third arg is program file name. It is searched for as in the shell. Remaining arguments are strings to give program as arguments. INCODE and OUTCODE specify the coding-system objects used in input/output from/to the process. Fopen-network-stream Open a TCP connection for a service to a host. Returns a subprocess-object to represent the connection. Input and output work as for subprocesses; `delete-process' closes it. Args are NAME BUFFER HOST SERVICE. NAME is name for process. It is modified if necessary to make it unique. BUFFER is the buffer (or buffer-name) to associate with the process. Process output goes at end of that buffer, unless you specify an output stream or filter function to handle the output. BUFFER may be also nil, meaning that this process is not associated with any buffer Third arg is name of the host to connect to, or its IP address. Fourth arg SERVICE is name of the service desired, or an integer specifying a port number to connect to. Fshell-quote-argument Quote an argument for passing as argument to an inferior shell. Fexec-to-string Execute COMMAND as an external process and return the output of that process as a string Fget-other-frame Return some frame other than the current frame, creating one if necessary. Fnext-multiframe-window Select the next window, regardless of which frame it is on. Fprevious-multiframe-window Select the previous window, regardless of which frame it is on. Fmake-frame-on-device Create a frame of type TYPE on CONNECTION. TYPE should be a symbol naming the device type, i.e. one of x An X display. CONNECTION should be a standard display string such as "unix:0", or nil for the display specified on the command line or in the DISPLAY environment variable. Only if support for X was compiled into XEmacs. tty A standard TTY connection or terminal. CONNECTION should be a TTY device name such as "/dev/ttyp2" (as determined by the Unix command `tty') or nil for XEmacs' standard input and output (usually the TTY in which XEmacs started). Only if support for TTY's was compiled into XEmacs. ns A connection to a machine running the NeXTstep windowing system. Not currently implemented. win32 A connection to a machine running Microsoft Windows NT or Windows 95. Not currently implemented. pc A direct-write MS-DOS frame. Not currently implemented. PROPS should be a plist of properties, as in the call to `make-frame'. If a connection to CONNECTION already exists, it is reused; otherwise, a new connection is opened. Ffiltered-frame-list Return a list of all live frames which satisfy PREDICATE. If optional second arg DEVICE is non-nil, restrict the frames returned to that device. Fminibuffer-frame-list Return a list of all frames with their own minibuffers. If optional second arg DEVICE is non-nil, restrict the frames returned to that device. Fframe-minibuffer-only-p Return non-nil if FRAME is a minibuffer-only frame. Fframe-remove-geometry-props Return the property list PLIST, but with geometry specs removed. This deletes all bindings in PLIST for `top', `left', `width', `height', `user-size' and `user-position' properties. Emacs uses this to avoid overriding explicit moves and resizings from the user during startup. Fother-frame Select the ARG'th different visible frame, and raise it. All frames are arranged in a cyclic order. This command selects the frame ARG steps away in that order. A negative ARG moves in the opposite order. Fframe-list Return a list of all frames on all devices/consoles. Fframe-type Return the type of the specified frame (e.g. `x' or `tty'). This is equivalent to the type of the frame's device. Value is `tty' for a tty frame (a character-only terminal), `x' for a frame that is an X window, `ns' for a frame that is a NeXTstep window (not yet implemented), `win32' for a frame that is a Windows or Windows NT window (not yet implemented), `pc' for a frame that is a direct-write MS-DOS frame (not yet implemented), `stream' for a stream frame (which acts like a stdio stream), and `dead' for a deleted frame. Fdevice-or-frame-p Return non-nil if OBJECT is a device or frame. Fdevice-or-frame-type Return the type (e.g. `x' or `tty') of DEVICE-OR-FRAME. DEVICE-OR-FRAME should be a device or a frame object. See `device-type' for a description of the possible types. Ffw-frame Given a frame or window, return the associated frame. Return nil otherwise. Fcurrent-frame-configuration Return a list describing the positions and states of all frames. Its car is `frame-configuration'. Each element of the cdr is a list of the form (FRAME PLIST WINDOW-CONFIG), where FRAME is a frame object, PLIST is a property list specifying some of FRAME's properties, and WINDOW-CONFIG is a window configuration object for FRAME. Fset-frame-configuration Restore the frames to the state described by CONFIGURATION. Each frame listed in CONFIGURATION has its position, size, window configuration, and other properties set as specified in CONFIGURATION. Ordinarily, this function deletes all existing frames not listed in CONFIGURATION. But if optional second argument NODELETE is given and non-nil, the unwanted frames are iconified instead. Fframe-configuration-p Return non-nil if OBJECT seems to be a frame configuration. Any list whose car is `frame-configuration' is assumed to be a frame configuration. Ficonify-emacs Replace every non-iconified FRAME with a *single* icon. Iconified frames are left alone. When XEmacs is in this globally-iconified state, de-iconifying any emacs icon will uniconify all frames that were visible, and iconify all frames that were not. Fsuspend-or-iconify-emacs Calls iconify-emacs if frame is an X frame, otherwise calls suspend-emacs Fsuspend-emacs-or-iconify-frame Iconify current frame if it is an X frame, otherwise suspend Emacs. Fdefault-select-frame-hook Implements the `auto-raise-frame' variable. For use as the value of `select-frame-hook'. Fdefault-deselect-frame-hook Implements the `auto-lower-frame' variable. For use as the value of `deselect-frame-hook'. Fdefault-drag-and-drop-functions Implements the `drag-and-drop-functions' variable. For use as the value of `drag-and-drop-functions'. A file is popped up in a new buffer, some data without is inserted at point. Fcde-start-drag Implements the CDE drag operation. Calls the internal function cde-start-drag-internal to do the actual work. Foffix-start-drag Implements the OffiX drag operation. Calls the internal function offix-start-drag-internal to do the actual work. If type is not given, DndText is assumed. Foffix-start-drag-region Implements the OffiX drag operation for a region. Calls the internal function offix-start-drag-internal to do the actual work. This always assumes DndText as type. Vget-frame-for-buffer-default-frame-name The default frame to select; see doc of `get-frame-for-buffer'. Fget-frame-for-buffer-noselect Return a frame in which to display BUFFER. This is a subroutine of `get-frame-for-buffer' (which see). Fget-frame-for-buffer Select and return a frame in which to display BUFFER. Normally, the buffer will simply be displayed in the current frame. But if the symbol naming the major-mode of the buffer has a 'frame-name property (which should be a symbol), then the buffer will be displayed in a frame of that name. If there is no frame of that name, then one is created. If the major-mode doesn't have a 'frame-name property, then the frame named by `get-frame-for-buffer-default-frame-name' will be used. If that is nil (the default) then the currently selected frame will used. If the frame-name symbol has an 'instance-limit property (an integer) then each time a buffer of the mode in question is displayed, a new frame with that name will be created, until there are `instance-limit' of them. If instance-limit is 0, then a new frame will be created each time. If a buffer is already displayed in a frame, then `instance-limit' is ignored, and that frame is used. If the frame-name symbol has a 'frame-defaults property, then that is prepended to the `default-frame-plist' when creating a frame for the first time. This function may be used as the value of `pre-display-buffer-function', to cause the display-buffer function and its callers to exhibit the above behavior. Fframes-of-buffer Return list of frames that BUFFER is currently being displayed on. If the buffer is being displayed on the currently selected frame, that frame is first in the list. VISIBLE-ONLY will only list non-iconified frames. Fshow-temp-buffer-in-current-frame For use as the value of temp-buffer-show-function: always displays the buffer in the current frame, regardless of the behavior that would otherwise be introduced by the `pre-display-buffer-function', which is normally set to `get-frame-for-buffer' (which see). Fdelete-other-frames Delete all but FRAME (or the selected frame). Fframe-highest-window Return the highest window on FRAME which is at POSITION. If omitted, FRAME defaults to the currently selected frame. POSITION is used to distinguish between multiple windows that abut the top of the frame: 0 means the leftmost window abutting the top of the frame, 1 the next-leftmost, etc. POSITION can also be less than zero: -1 means the rightmost window abutting the top of the frame, -2 the next-rightmost, etc. If omitted, POSITION defaults to 0, i.e. the leftmost highest window. If there is no window at the given POSITION, return nil. Fframe-lowest-window Return the lowest window on FRAME which is at POSITION. If omitted, FRAME defaults to the currently selected frame. POSITION is used to distinguish between multiple windows that abut the bottom of the frame: 0 means the leftmost window abutting the bottom of the frame, 1 the next-leftmost, etc. POSITION can also be less than zero: -1 means the rightmost window abutting the bottom of the frame, -2 the next-rightmost, etc. If omitted, POSITION defaults to 0, i.e. the leftmost lowest window. If there is no window at the given POSITION, return nil. Fframe-leftmost-window Return the leftmost window on FRAME which is at POSITION. If omitted, FRAME defaults to the currently selected frame. POSITION is used to distinguish between multiple windows that abut the left edge of the frame: 0 means the highest window abutting the left edge of the frame, 1 the next-highest, etc. POSITION can also be less than zero: -1 means the lowest window abutting the left edge of the frame, -2 the next-lowest, etc. If omitted, POSITION defaults to 0, i.e. the highest leftmost window. If there is no window at the given POSITION, return nil. Fframe-rightmost-window Return the rightmost window on FRAME which is at POSITION. If omitted, FRAME defaults to the currently selected frame. POSITION is used to distinguish between multiple windows that abut the right edge of the frame: 0 means the highest window abutting the right edge of the frame, 1 the next-highest, etc. POSITION can also be less than zero: -1 means the lowest window abutting the right edge of the frame, -2 the next-lowest, etc. If omitted, POSITION defaults to 0, i.e. the highest rightmost window. If there is no window at the given POSITION, return nil. Fset-frame-property Set property PROP of FRAME to VAL. See `set-frame-properties'. Fframe-height Return number of lines available for display on FRAME. Fframe-width Return number of columns available for display on FRAME. Fmap-y-or-n-p Ask a series of boolean questions. Takes args PROMPTER ACTOR LIST, and optional args HELP and ACTION-ALIST. LIST is a list of objects, or a function of no arguments to return the next object or nil. If PROMPTER is a string, the prompt is (format PROMPTER OBJECT). If not a string, PROMPTER is a function of one arg (an object from LIST), which returns a string to be used as the prompt for that object. If the return value is not a string, it may be nil to ignore the object or non-nil to act on the object without asking the user. ACTOR is a function of one arg (an object from LIST), which gets called with each object that the user answers `yes' for. If HELP is given, it is a list (OBJECT OBJECTS ACTION), where OBJECT is a string giving the singular noun for an elt of LIST; OBJECTS is the plural noun for elts of LIST, and ACTION is a transitive verb describing ACTOR. The default is ("object" "objects" "act on"). At the prompts, the user may enter y, Y, or SPC to act on that object; n, N, or DEL to skip that object; ! to act on all following objects; ESC or q to exit (skip all following objects); . (period) to act on the current object and then exit; or \[help-command] to get help. If ACTION-ALIST is given, it is an alist (KEY FUNCTION HELP) of extra keys that will be accepted. KEY is a character; FUNCTION is a function of one arg (an object from LIST); HELP is a string. When the user hits KEY, FUNCTION is called. If it returns non-nil, the object is considered "acted upon", and the next object from LIST is processed. If it returns nil, the prompt is repeated for the same object. Final optional argument NO-CURSOR-IN-ECHO-AREA non-nil says not to set `cursor-in-echo-area' while prompting. This function uses `query-replace-map' to define the standard responses, but not all of the responses which `query-replace' understands are meaningful here. Returns the number of actions taken. Fnewline Insert a newline, and move to left margin of the new line if it's blank. The newline is marked with the text-property `hard'. With arg, insert that many newlines. In Auto Fill mode, if no numeric arg, break the preceding line if it's long. Fopen-line Insert a newline and leave point before it. If there is a fill prefix and/or a left-margin, insert them on the new line if the line would have been blank. With arg N, insert N newlines. Fsplit-line Split current line, moving portion beyond point vertically down. Fquoted-insert Read next input character and insert it. This is useful for inserting control characters. You may also type up to 3 octal digits, to insert a character with that code. In overwrite mode, this function inserts the character anyway, and does not handle octal digits specially. This means that if you use overwrite as your normal editing mode, you can use this function to insert characters when necessary. In binary overwrite mode, this function does overwrite, and octal digits are interpreted as a character code. This is supposed to make this function useful in editing binary files. Fdelete-indentation Join this line to previous and fix up whitespace at join. If there is a fill prefix, delete it from the beginning of this line. With argument, join this line to following line. Ffixup-whitespace Fixup white space between objects around point. Leave one space or none, according to the context. Fdelete-horizontal-space Delete all spaces and tabs around point. Fjust-one-space Delete all spaces and tabs around point, leaving one space. Fdelete-blank-lines On blank line, delete all surrounding blank lines, leaving just one. On isolated blank line, delete that one. On nonblank line, delete any immediately following blank lines. Fback-to-indentation Move point to the first non-whitespace character on this line. Fnewline-and-indent Insert a newline, then indent according to major mode. Indentation is done using the value of `indent-line-function'. In programming language modes, this is the same as TAB. In some text modes, where TAB inserts a tab, this command indents to the column specified by the function `current-left-margin'. Freindent-then-newline-and-indent Reindent current line, insert newline, then indent the new line. Indentation of both lines is done according to the current major mode, which means calling the current value of `indent-line-function'. In programming language modes, this is the same as TAB. In some text modes, where TAB inserts a tab, this indents to the column specified by the function `current-left-margin'. Fbackward-delete-char-untabify Delete characters backward, changing tabs into spaces. Delete ARG chars, and kill (save in kill ring) if KILLP is non-nil. Interactively, ARG is the prefix arg (default 1) and KILLP is t if a prefix arg was specified. Fbackward-or-forward-delete-char Delete either one character backwards or one character forwards. Controlled by the state of `delete-key-deletes-forward' and whether the BackSpace keysym even exists on your keyboard. If you don't have a BackSpace keysym, the delete key should always delete one character backwards. Fbackward-or-forward-kill-word Delete either one word backwards or one word forwards. Controlled by the state of `delete-key-deletes-forward' and whether the BackSpace keysym even exists on your keyboard. If you don't have a BackSpace keysym, the delete key should always delete one character backwards. Fbackward-or-forward-kill-sentence Delete either one sentence backwards or one sentence forwards. Controlled by the state of `delete-key-deletes-forward' and whether the BackSpace keysym even exists on your keyboard. If you don't have a BackSpace keysym, the delete key should always delete one character backwards. Fbackward-or-forward-kill-sexp Delete either one sexpr backwards or one sexpr forwards. Controlled by the state of `delete-key-deletes-forward' and whether the BackSpace keysym even exists on your keyboard. If you don't have a BackSpace keysym, the delete key should always delete one character backwards. Fzap-to-char Kill up to and including ARG'th occurrence of CHAR. Goes backward if ARG is negative; error if CHAR not found. Fbeginning-of-buffer Move point to the beginning of the buffer; leave mark at previous position. With arg N, put point N/10 of the way from the beginning. If the buffer is narrowed, this command uses the beginning and size of the accessible part of the buffer. Don't use this command in Lisp programs! (goto-char (point-min)) is faster and avoids clobbering the mark. Fend-of-buffer Move point to the end of the buffer; leave mark at previous position. With arg N, put point N/10 of the way from the end. If the buffer is narrowed, this command uses the beginning and size of the accessible part of the buffer. Don't use this command in Lisp programs! (goto-char (point-max)) is faster and avoids clobbering the mark. Fmark-beginning-of-buffer Push a mark at the beginning of the buffer; leave point where it is. With arg N, push mark N/10 of the way from the true beginning. Fmark-end-of-buffer Push a mark at the end of the buffer; leave point where it is. With arg N, push mark N/10 of the way from the true end. Fmark-whole-buffer Put point at beginning and mark at end of buffer. You probably should not use this function in Lisp programs; it is usually a mistake for a Lisp function to use any subroutine that uses or sets the mark. Feval-current-buffer Evaluate the current buffer as Lisp code. Programs can pass argument PRINTFLAG which controls printing of output: nil means discard it; anything else is stream for print. Fcount-lines-region Print number of lines and characters in the region. Fcount-lines-buffer Print number of lines and characters in the specified buffer. Fwhat-line Print the current buffer line number and narrowed line number of point. Fcount-lines Return number of lines between START and END. This is usually the number of newlines between them, but can be one more if START is not equal to END and the greater of them is not at the start of a line. Fwhat-cursor-position Print info on cursor position (on screen and within buffer). Ffundamental-mode Major mode not specialized for anything in particular. Other major modes are defined by comparison with this one. Feval-expression Evaluate EXPRESSION and print value in minibuffer. Value is also consed on to front of the variable `values'. Fedit-and-eval-command Prompting with PROMPT, let user edit COMMAND and eval result. COMMAND is a Lisp expression. Let user edit that expression in the minibuffer, then read and evaluate the result. Frepeat-complex-command Edit and re-evaluate last complex command, or ARGth from last. A complex command is one which used the minibuffer. The command is placed in the minibuffer as a Lisp form for editing. The result is executed, repeating the command as changed. If the command has been changed or is not the most recent previous command it is added to the front of the command history. You can use the minibuffer history commands \<minibuffer-local-map>\[next-history-element] and \[previous-history-element] to get different commands to edit and resubmit. Fgoto-line Goto line ARG, counting from line 1 at beginning of buffer. Fundo Undo some previous changes. Repeat this command to undo more changes. A numeric argument serves as a repeat count. Vpending-undo-list Within a run of consecutive undo commands, list remaining to be undone. Fundo-start Set `pending-undo-list' to the front of the undo list. The next call to `undo-more' will undo the most recently made change. Fundo-more Undo back N undo-boundaries beyond what was already undone recently. Call `undo-start' to get ready to undo recent changes, then call `undo-more' one or more times to undo them. Fcall-with-transparent-undo Apply FN to ARGS, and then undo all changes made by FN to the current buffer. The undo records are processed even if FN returns non-locally. There is no trace of the changes made by FN in the buffer's undo history. You can use this in a write-file-hooks function with continue-save-buffer to make the contents of a disk file differ from its in-memory buffer. Vuniversal-argument-map Keymap used while processing \[universal-argument]. Vuniversal-argument-num-events Number of argument-specifying events read by `universal-argument'. `universal-argument-other-key' uses this to discard those events from (this-command-keys), and reread only the final command. Funiversal-argument Begin a numeric argument for the following command. Digits or minus sign following \[universal-argument] make up the numeric argument. \[universal-argument] following the digits or minus sign ends the argument. \[universal-argument] without digits or minus sign provides 4 as argument. Repeating \[universal-argument] without digits or minus sign multiplies the argument by 4 each time. Fnegative-argument Begin a negative numeric argument for the next command. \[universal-argument] following digits or minus sign ends the argument. Fdigit-argument Part of the numeric argument for the next command. \[universal-argument] following digits or minus sign ends the argument. Fforward-to-indentation Move forward ARG lines and position at first nonblank character. Fbackward-to-indentation Move backward ARG lines and position at first nonblank character. Fkill-line Kill the rest of the current line; if no nonblanks there, kill thru newline. With prefix argument, kill that many lines from point. Negative arguments kill lines backward. When calling from a program, nil means "no arg", a number counts as a prefix arg. If `kill-whole-line' is non-nil, then kill the whole line when given no argument at the beginning of a line. Fbackward-kill-line Kill back to the beginning of the line. Vinterprogram-cut-function Function to call to make a killed region available to other programs. Most window systems provide some sort of facility for cutting and pasting text between the windows of different programs. This variable holds a function that Emacs calls whenever text is put in the kill ring, to make the new kill available to other programs. The function takes one or two arguments. The first argument, TEXT, is a string containing the text which should be made available. The second, PUSH, if non-nil means this is a "new" kill; nil means appending to an "old" kill. Vinterprogram-paste-function Function to call to get text cut from other programs. Most window systems provide some sort of facility for cutting and pasting text between the windows of different programs. This variable holds a function that Emacs calls to obtain text that other programs have provided for pasting. The function should be called with no arguments. If the function returns nil, then no other program has provided such text, and the top of the Emacs kill ring should be used. If the function returns a string, that string should be put in the kill ring as the latest kill. Note that the function should return a string only if a program other than Emacs has provided a string for pasting; if Emacs provided the most recent string, the function should return nil. If it is difficult to tell whether Emacs or some other program provided the current string, it is probably good enough to return nil if the string is equal (according to `string=') to the last text Emacs provided. Vkill-ring List of killed text sequences. Since the kill ring is supposed to interact nicely with cut-and-paste facilities offered by window systems, use of this variable should interact nicely with `interprogram-cut-function' and `interprogram-paste-function'. The functions `kill-new', `kill-append', and `current-kill' are supposed to implement this interaction; you may want to use them instead of manipulating the kill ring directly. Vkill-ring-yank-pointer The tail of the kill ring whose car is the last thing yanked. Fkill-new Make STRING the latest kill in the kill ring. Set the kill-ring-yank pointer to point to it. Run `kill-hooks'. Optional second argument REPLACE non-nil means that STRING will replace the front of the kill ring, rather than being added to the list. Fkill-append Append STRING to the end of the latest kill in the kill ring. If BEFORE-P is non-nil, prepend STRING to the kill. Run `kill-hooks'. Fcurrent-kill Rotate the yanking point by N places, and then return that kill. If N is zero, `interprogram-paste-function' is set, and calling it returns a string, then that string is added to the front of the kill ring and returned as the latest kill. If optional arg DO-NOT-MOVE is non-nil, then don't actually move the yanking point; just return the Nth kill forward. Fkill-region Kill between point and mark. The text is deleted but saved in the kill ring. The command \[yank] can retrieve it from there. (If you want to kill and then yank immediately, use \[copy-region-as-kill].) This is the primitive for programs to kill text (as opposed to deleting it). Supply two arguments, character numbers indicating the stretch of text to be killed. Any command that calls this function is a "kill command". If the previous command was also a kill command, the text killed this time appends to the text killed last time to make one entry in the kill ring. Fcopy-region-as-kill Save the region as if killed, but don't kill it. Run `kill-hooks'. Fkill-ring-save Save the region as if killed, but don't kill it. This command is similar to `copy-region-as-kill', except that it gives visual feedback indicating the extent of the region being copied. Fappend-next-kill Cause following command, if it kills, to append to previous kill. Fyank-pop Replace just-yanked stretch of killed text with a different stretch. This command is allowed only immediately after a `yank' or a `yank-pop'. At such a time, the region contains a stretch of reinserted previously-killed text. `yank-pop' deletes that text and inserts in its place a different stretch of killed text. With no argument, the previous kill is inserted. With argument N, insert the Nth previous kill. If N is negative, this is a more recent kill. The sequence of kills wraps around, so that after the oldest one comes the newest one. Fyank Reinsert the last stretch of killed text. More precisely, reinsert the stretch of killed text most recently killed OR yanked. Put point at end, and set mark at beginning. With just C-u as argument, same but put point at beginning (and mark at end). With argument N, reinsert the Nth most recently killed stretch of killed text. See also the command \[yank-pop]. Frotate-yank-pointer Rotate the yanking point in the kill ring. With argument, rotate that many kills forward (or backward, if negative). Finsert-buffer Insert after point the contents of BUFFER. Puts mark after the inserted text. BUFFER may be a buffer or a buffer name. Fappend-to-buffer Append to specified buffer the text of the region. It is inserted into that buffer before its point. When calling from a program, give three arguments: BUFFER (or buffer name), START and END. START and END specify the portion of the current buffer to be copied. Fprepend-to-buffer Prepend to specified buffer the text of the region. It is inserted into that buffer after its point. When calling from a program, give three arguments: BUFFER (or buffer name), START and END. START and END specify the portion of the current buffer to be copied. Fcopy-to-buffer Copy to specified buffer the text of the region. It is inserted into that buffer, replacing existing text there. When calling from a program, give three arguments: BUFFER (or buffer name), START and END. START and END specify the portion of the current buffer to be copied. Fmark Return this buffer's mark value as integer, or nil if no mark. If `zmacs-regions' is true, then this returns nil unless the region is currently in the active (highlighted) state. With an argument of t, this returns the mark (if there is one) regardless of the active-region state. You should *generally* not use the mark unless the region is active, if the user has expressed a preference for the active-region model. If you are using this in an editing command, you are most likely making a mistake; see the documentation of `set-mark'. Fset-mark Set this buffer's mark to POS. Don't use this function! That is to say, don't use this function unless you want the user to see that the mark has moved, and you want the previous mark position to be lost. Normally, when a new mark is set, the old one should go on the stack. This is why most applications should use push-mark, not set-mark. Novice Emacs Lisp programmers often try to use the mark for the wrong purposes. The mark saves a location for the user's convenience. Most editing commands should not alter the mark. To remember a location for internal use in the Lisp program, store it in a Lisp variable. Example: (let ((beg (point))) (forward-line 1) (delete-region beg (point))). Vmark-ring The list of former marks of the current buffer, most recent first. Vglobal-mark-ring The list of saved global marks, most recent first. Fset-mark-command Set mark at where point is, or jump to mark. With no prefix argument, set mark, push old mark position on local mark ring, and push mark on global mark ring. With argument, jump to mark, and pop a new position for mark off the ring (does not affect global mark ring). Novice Emacs Lisp programmers often try to use the mark for the wrong purposes. See the documentation of `set-mark' for more information. Fpush-mark Set mark at LOCATION (point, by default) and push old mark on mark ring. If the last global mark pushed was not in the current buffer, also push LOCATION on the global mark ring. Display `Mark set' unless the optional second arg NOMSG is non-nil. Activate mark if optional third arg ACTIVATE-REGION non-nil. Novice Emacs Lisp programmers often try to use the mark for the wrong purposes. See the documentation of `set-mark' for more information. Fpop-mark Pop off mark ring into the buffer's actual mark. Does not set point. Does nothing if mark ring is empty. Fexchange-point-and-mark Put the mark where point is now, and point where the mark is now. The mark is activated unless DONT-ACTIVATE-REGION is non-nil. Fmark-something internal function used by mark-sexp, mark-word, etc. Fpop-global-mark Pop off global mark ring and jump to the top location. Fnext-line Move cursor vertically down ARG lines. If there is no character in the target line exactly under the current column, the cursor is positioned after the character in that line which spans this column, or at the end of the line if it is not long enough. If there is no line in the buffer after this one, behavior depends on the value of `next-line-add-newlines'. If non-nil, it inserts a newline character to create a line, and moves the cursor to that line. Otherwise it moves the cursor to the end of the buffer. The command \[set-goal-column] can be used to create a semipermanent goal column to which this command always moves. Then it does not try to move vertically. This goal column is stored in `goal-column', which is nil when there is none. If you are thinking of using this in a Lisp program, consider using `forward-line' instead. It is usually easier to use and more reliable (no dependence on goal column, etc.). Fprevious-line Move cursor vertically up ARG lines. If there is no character in the target line exactly over the current column, the cursor is positioned after the character in that line which spans this column, or at the end of the line if it is not long enough. The command \[set-goal-column] can be used to create a semipermanent goal column to which this command always moves. Then it does not try to move vertically. If you are thinking of using this in a Lisp program, consider using `forward-line' with a negative argument instead. It is usually easier to use and more reliable (no dependence on goal column, etc.). Vtemporary-goal-column Current goal column for vertical motion. It is the column where point was at the start of current run of vertical motion commands. When the `track-eol' feature is doing its job, the value is 9999. Fset-goal-column Set the current horizontal position as a goal for \[next-line] and \[previous-line]. Those commands will move to this position in the line moved to rather than trying to keep the same horizontal position. With a non-nil argument, clears out the goal column so that \[next-line] and \[previous-line] resume vertical motion. The goal column is stored in the variable `goal-column'. Fscroll-other-window-down Scroll the "other window" down. For more details, see the documentation for `scroll-other-window'. Fbeginning-of-buffer-other-window Move point to the beginning of the buffer in the other window. Leave mark at previous position. With arg N, put point N/10 of the way from the true beginning. Fend-of-buffer-other-window Move point to the end of the buffer in the other window. Leave mark at previous position. With arg N, put point N/10 of the way from the true end. Ftranspose-chars Interchange characters around point, moving forward one character. With prefix arg ARG, effect is to take character before point and drag it forward past ARG other characters (backward if ARG negative). If no argument and at end of line, the previous two chars are exchanged. Ftranspose-preceding-chars Interchange characters before point. With prefix arg ARG, effect is to take character before point and drag it forward past ARG other characters (backward if ARG negative). If no argument and not at start of line, the previous two chars are exchanged. Ftranspose-words Interchange words around point, leaving point at end of them. With prefix arg ARG, effect is to take word before or around point and drag it forward past ARG other words (backward if ARG negative). If ARG is zero, the words around or after point and around or after mark are interchanged. Ftranspose-sexps Like \[transpose-words] but applies to sexps. Does not work on a sexp that point is in the middle of if it is a list or string. Ftranspose-lines Exchange current line and previous line, leaving point after both. With argument ARG, takes previous line and moves it past ARG lines. With argument 0, interchanges line point is in with line mark is in. Vcomment-indent-hook Obsolete variable for function to compute desired indentation for a comment. Use `comment-indent-function' instead. This function is called with no args with point at the beginning of the comment's starting delimiter. Vcomment-indent-function Function to compute desired indentation for a comment. This function is called with no args with point at the beginning of the comment's starting delimiter. Findent-for-comment Indent this line's comment to comment column, or insert an empty comment. Fset-comment-column Set the comment column based on point. With no arg, set the comment column to the current column. With just minus as arg, kill any comment on this line. With any other arg, set comment column to indentation of the previous comment and then align or create a comment on this line at that column. Fkill-comment Kill the comment on this line, if any. With argument, kill comments on that many lines starting with this one. Fcomment-region Comment or uncomment each line in the region. With just C-u prefix arg, uncomment each line in region. Numeric prefix arg ARG means use ARG comment characters. If ARG is negative, delete that many comment characters instead. Comments are terminated on each line, even for syntax in which newline does not end the comment. Blank lines do not get comments. Fprefix-region Add a prefix string to each line between mark and point. Fbackward-word Move backward until encountering the end of a word. With argument, do this that many times. In programs, it is faster to call `forward-word' with negative arg. Fmark-word Set mark arg words away from point. Fkill-word Kill characters forward until encountering the end of a word. With argument, do this that many times. Fbackward-kill-word Kill characters backward until encountering the end of a word. With argument, do this that many times. Fcurrent-word Return the word point is on (or a nearby word) as a string. If optional arg STRICT is non-nil, return nil unless point is within or adjacent to a word. If point is not between two word-constituent characters, but immediately follows one, move back first. Otherwise, if point precedes a word constituent, move forward first. Otherwise, move backwards until a word constituent is found and get that word; if you a newlines is reached first, move forward instead. Vcomment-line-break-function *Mode-specific function which line breaks and continues a comment. This function is only called during auto-filling of a comment section. The function should take a single optional argument which is a flag indicating whether soft newlines should be inserted. Vnormal-auto-fill-function The function to use for `auto-fill-function' if Auto Fill mode is turned on. Some major modes set this. Fauto-fill-mode Toggle auto-fill mode. With arg, turn auto-fill mode on if and only if arg is positive. In Auto-Fill mode, inserting a space at a column beyond `current-fill-column' automatically breaks the line at a previous space. The value of `normal-auto-fill-function' specifies the function to use for `auto-fill-function' when turning Auto Fill mode on. Fauto-fill-function Automatically break line at a previous space, in insertion of text. Fturn-on-auto-fill Unconditionally turn on Auto Fill mode. Fset-fill-column Set `fill-column' to specified argument. Just \[universal-argument] as argument means to use the current column The variable `fill-column' has a separate value for each buffer. Findent-new-comment-line Break line at point and indent, continuing comment if within one. This indents the body of the continued comment under the previous comment line. This command is intended for styles where you write a comment per line, starting a new comment (and terminating it if necessary) on each line. If you want to continue one comment across several lines, use \[newline-and-indent]. If a fill column is specified, it overrides the use of the comment column or comment indentation. The inserted newline is marked hard if `use-hard-newlines' is true, unless optional argument SOFT is non-nil. Fset-selective-display Set `selective-display' to ARG; clear it if no arg. When the value of `selective-display' is a number > 0, lines whose indentation is >= that value are not displayed. The variable `selective-display' has a separate value for each buffer. Fnuke-selective-display Ensure that the buffer is not in selective-display mode. If `selective-display' is t, then restore the buffer text to it's original state before disabling selective display. Voverwrite-mode-textual The string displayed in the mode line when in overwrite mode. Voverwrite-mode-binary The string displayed in the mode line when in binary overwrite mode. Foverwrite-mode Toggle overwrite mode. With arg, turn overwrite mode on iff arg is positive. In overwrite mode, printing characters typed in replace existing text on a one-for-one basis, rather than pushing it to the right. At the end of a line, such characters extend the line. Before a tab, such characters insert until the tab is filled in. \[quoted-insert] still inserts characters in overwrite mode; this is supposed to make it easier to insert characters when necessary. Fbinary-overwrite-mode Toggle binary overwrite mode. With arg, turn binary overwrite mode on iff arg is positive. In binary overwrite mode, printing characters typed in replace existing text. Newlines are not treated specially, so typing at the end of a line joins the line to the next, with the typed character between them. Typing before a tab character simply replaces the tab with the character typed. \[quoted-insert] replaces the text at the cursor, just as ordinary typing characters do. Note that binary overwrite mode is not its own minor mode; it is a specialization of overwrite-mode, entered by setting the `overwrite-mode' variable to `overwrite-mode-binary'. Fline-number-mode Toggle Line Number mode. With arg, turn Line Number mode on iff arg is positive. When Line Number mode is enabled, the line number appears in the mode line. Fcolumn-number-mode Toggle Column Number mode. With arg, turn Column Number mode on iff arg is positive. When Column Number mode is enabled, the column number appears in the mode line. Fblink-matching-open Move cursor momentarily to the beginning of the sexp before point. Fassoc-ignore-case Like `assoc', but assumes KEY is a string and ignores case when comparing. Fdefine-mail-user-agent Define a symbol to identify a mail-sending package for `mail-user-agent'. SYMBOL can be any Lisp symbol. Its function definition and/or value as a variable do not matter for this usage; we use only certain properties on its property list, to encode the rest of the arguments. COMPOSEFUNC is program callable function that composes an outgoing mail message buffer. This function should set up the basics of the buffer without requiring user interaction. It should populate the standard mail headers, leaving the `to:' and `subject:' headers blank by default. COMPOSEFUNC should accept several optional arguments--the same arguments that `compose-mail' takes. See that function's documentation. SENDFUNC is the command a user would run to send the message. Optional ABORTFUNC is the command a user would run to abort the message. For mail packages that don't have a separate abort function, this can be `kill-buffer' (the equivalent of omitting this argument). Optional HOOKVAR is a hook variable that gets run before the message is actually sent. Callers that use the `mail-user-agent' may install a hook function temporarily on this hook variable. If HOOKVAR is nil, `mail-send-hook' is used. The properties used on SYMBOL are `composefunc', `sendfunc', `abortfunc', and `hookvar'. Fcompose-mail Start composing a mail message to send. This uses the user's chosen mail composition package as selected with the variable `mail-user-agent'. The optional arguments TO and SUBJECT specify recipients and the initial Subject field, respectively. OTHER-HEADERS is an alist specifying additional header fields. Elements look like (HEADER . VALUE) where both HEADER and VALUE are strings. CONTINUE, if non-nil, says to continue editing a message already being composed. SWITCH-FUNCTION, if non-nil, is a function to use to switch to and display the buffer used for mail composition. YANK-ACTION, if non-nil, is an action to perform, if and when necessary, to insert the raw text of the message being replied to. It has the form (FUNCTION . ARGS). The user agent will apply FUNCTION to ARGS, to insert the raw text of the original message. (The user agent will also run `mail-citation-hook', *after* the original text has been inserted in this way.) SEND-ACTIONS is a list of actions to call when the message is sent. Each action has the form (FUNCTION . ARGS). Fcompose-mail-other-window Like \[compose-mail], but edit the outgoing message in another window. Fcompose-mail-other-frame Like \[compose-mail], but edit the outgoing message in another frame. Fset-variable Set VARIABLE to VALUE. VALUE is a Lisp object. When using this interactively, supply a Lisp expression for VALUE. If you want VALUE to be a string, you must surround it with doublequotes. If VARIABLE has a `variable-interactive' property, that is used as if it were the arg to `interactive' (which see) to interactively read the value. Factivate-region Activate the region, if `zmacs-regions' is true. Setting `zmacs-regions' to true causes LISPM-style active regions to be used. This function has no effect if `zmacs-regions' is false. Fregion-exists-p Non-nil iff the region exists. If active regions are in use (i.e. `zmacs-regions' is true), this means that the region is active. Otherwise, this means that the user has pushed a mark in this buffer at some point in the past. The functions `region-beginning' and `region-end' can be used to find the limits of the region. Fregion-active-p Non-nil iff the region is active. If `zmacs-regions' is true, this is equivalent to `region-exists-p'. Otherwise, this function always returns false. Fcapitalize-region-or-word Capitalize the selected region or the following word (or ARG words). Fupcase-region-or-word Upcase the selected region or the following word (or ARG words). Fdowncase-region-or-word Downcase the selected region or the following word (or ARG words). Vzmacs-activate-region-hook Function or functions called when the region becomes active; see the variable `zmacs-regions'. Vzmacs-deactivate-region-hook Function or functions called when the region becomes inactive; see the variable `zmacs-regions'. Vzmacs-update-region-hook Function or functions called when the active region changes. This is called after each command that sets `zmacs-region-stays' to t. See the variable `zmacs-regions'. Vzmacs-region-extent The extent of the zmacs region; don't use this. Vzmacs-region-rectangular-p Whether the zmacs region is a rectangle; don't use this. Fzmacs-region-buffer Return the buffer containing the zmacs region, or nil. Fzmacs-activate-region Make the region between `point' and `mark' be active (highlighted), if `zmacs-regions' is true. Only a very small number of commands should ever do this. Calling this function will call the hook `zmacs-activate-region-hook', if the region was previously inactive. Calling this function ensures that the region stays active after the current command terminates, even if `zmacs-region-stays' is not set. Returns t if the region was activated (i.e. if `zmacs-regions' if t). Fzmacs-deactivate-region Make the region between `point' and `mark' no longer be active, if `zmacs-regions' is true. You shouldn't need to call this; the command loop calls it when appropriate. Calling this function will call the hook `zmacs-deactivate-region-hook', if the region was previously active. Returns t if the region had been active, nil otherwise. Fzmacs-update-region Update the highlighted region between `point' and `mark'. You shouldn't need to call this; the command loop calls it when appropriate. Calling this function will call the hook `zmacs-update-region-hook', if the region is active. Vmessage-stack An alist of label/string pairs representing active echo-area messages. The first element in the list is currently displayed in the echo area. Do not modify this directly--use the `message' or `display-message'/`clear-message' functions. Vremove-message-hook A function or list of functions to be called when a message is removed from the echo area at the bottom of the frame. The label of the removed message is passed as the first argument, and the text of the message as the second argument. Fshow-message-log Show the " *Message-Log*" buffer, which contains old messages and errors. Vlog-message-filter-function Value must be a function of two arguments: a symbol (label) and a string (message). It should return non-nil to indicate a message should be logged. Possible values include 'log-message-filter and 'log-message-filter-errors-only. Flog-message-filter Default value of log-message-filter-function. Mesages whose text matches one of the log-message-ignore-regexps or whose label appears in log-message-ignore-labels are not saved. Flog-message-filter-errors-only For use as the log-message-filter-function. Only logs error messages. Flog-message Stuff a copy of the message into the " *Message-Log*" buffer, if it satisfies the log-message-filter-function. For use on remove-message-hook. Fmessage-displayed-p Return a non-nil value if a message is presently displayed in the minibuffer's echo area. If optional argument RETURN-STRING is non-nil, return a string containing the message, otherwise just return t. Fclear-message Remove any message with the given LABEL from the message-stack, erasing it from the echo area if it's currently displayed there. If a message remains at the head of the message-stack and NO-RESTORE is nil, it will be displayed. The string which remains in the echo area will be returned, or nil if the message-stack is now empty. If LABEL is nil, the entire message-stack is cleared. Unless you need the return value or you need to specify a label, you should just use (message nil). Fdisplay-message Print a one-line message at the bottom of the frame. First argument LABEL is an identifier for this message. MESSAGE is the string to display. Use `clear-message' to remove a labelled message. Here are some standard labels (those marked with `*' are not logged by default--see the `log-message-ignore-labels' variable): message default label used by the `message' function error default label used for reporting errors * progress progress indicators like "Converting... 45%" * prompt prompt-like messages like "I-search: foo" * no-log messages that should never be logged Fcurrent-message Returns the current message in the echo area, or nil. The FRAME argument is currently unused. Fmessage Print a one-line message at the bottom of the frame. The arguments are the same as to `format'. If the only argument is nil, clear any existing message; let the minibuffer contents show. Vlog-warning-suppressed-classes List of classes of warnings that shouldn't be logged or displayed. If any of the CLASS symbols associated with a warning is the same as any of the symbols listed here, the warning will be completely ignored, as it they never happened. NOTE: In most circumstances, you should *not* set this variable. Set `display-warning-suppressed-classes' instead. That way the suppressed warnings are not displayed but are still unobtrusively logged. See also `log-warning-minimum-level' and `display-warning-minimum-level'. Vwarning-count Count of the number of warning messages displayed so far. Fwarning-level-p Non-nil if LEVEL specifies a warning level. Fafter-init-display-warnings Display warnings deferred till after the init file is run. Warnings that occur before then are deferred so that warning suppression in the .emacs file will be honored. Fdisplay-warning Display a warning message. CLASS should be a symbol describing what sort of warning this is, such as `resource' or `key-mapping'. A list of such symbols is also accepted. (Individual classes can be suppressed; see `display-warning-suppressed-classes'.) Optional argument LEVEL can be used to specify a priority for the warning, other than default priority `warning'. (See `display-warning-minimum-level'). The message is inserted into the *Warnings* buffer, which is made visible at appropriate times. Fwarn Display a warning message. The message is constructed by passing all args to `format'. The message is placed in the *Warnings* buffer, which will be popped up at the next redisplay. The class of the warning is `warning'. See also `display-warning'. Fdisplay-warning-buffer Make the buffer that contains the warnings be visible. The C code calls this periodically, right before redisplay. Femacs-name Return the printable name of this instance of Emacs. Vglobal-map Default global keymap mapping XEmacs keyboard input into commands. The value is a keymap which is usually (but not necessarily) XEmacs's global map. Vesc-map Default keymap for ESC (meta) commands. The normal global definition of the character ESC indirects to this keymap. Vctl-x-map Default keymap for C-x commands. The normal global definition of the character C-x indirects to this keymap. Vctl-x-4-map Keymap for subcommands of C-x 4 Vctl-x-5-map Keymap for subcommands of C-x 5 Vmode-specific-map Keymap for characters following C-c. Vabbrev-table-name-list List of symbols whose values are abbrev tables. Vabbrevs-changed Set non-nil by defining or altering any word abbrevs. This causes `save-some-buffers' to offer to save the abbrevs. Fmake-abbrev-table Create a new, empty abbrev table object. Fclear-abbrev-table Undefine all abbrevs in abbrev table TABLE, leaving it empty. Fdefine-abbrev-table Define TABNAME (a symbol) as an abbrev table name. Define abbrevs in it according to DEFINITIONS, which is a list of elements of the form (ABBREVNAME EXPANSION HOOK USECOUNT). Fdefine-abbrev Define an abbrev in TABLE named NAME, to expand to EXPANSION or call HOOK. NAME and EXPANSION are strings. Hook is a function or `nil'. To undefine an abbrev, define it with an expansion of `nil'. Fdefine-global-abbrev Define ABBREV as a global abbreviation for EXPANSION. Fdefine-mode-abbrev Define ABBREV as a mode-specific abbreviation for EXPANSION. Fabbrev-symbol Return the symbol representing abbrev named ABBREV. This symbol's name is ABBREV, but it is not the canonical symbol of that name; it is interned in an abbrev-table rather than the normal obarray. The value is nil if that abbrev is not defined. Optional second arg TABLE is abbrev table to look it up in. The default is to try buffer's mode-specific abbrev table, then global table. Fabbrev-expansion Return the string that ABBREV expands into in the current buffer. Optionally specify an abbrev table as second arg; then ABBREV is looked up in that table only. Funexpand-abbrev Undo the expansion of the last abbrev that expanded. This differs from ordinary undo in that other editing done since then is not undone. Finsert-abbrev-table-description Insert before point a full description of abbrev table named NAME. NAME is a symbol whose value is an abbrev table. If optional 2nd arg HUMAN is non-nil, insert a human-readable description. Otherwise the description is an expression, a call to `define-abbrev-table', which would define the abbrev table NAME exactly as it is currently defined. Fabbrev-mode Toggle abbrev mode. With argument ARG, turn abbrev mode on iff ARG is positive. In abbrev mode, inserting an abbreviation causes it to expand and be replaced by its expansion. Vedit-abbrevs-map Keymap used in edit-abbrevs. Fkill-all-abbrevs Undefine all defined abbrevs. Finsert-abbrevs Insert after point a description of all defined abbrevs. Mark is set after the inserted text. Flist-abbrevs Display a list of all defined abbrevs. Fedit-abbrevs-mode Major mode for editing the list of abbrev definitions. \{edit-abbrevs-map} Fedit-abbrevs Alter abbrev definitions by editing a list of them. Selects a buffer containing a list of abbrev definitions. You can edit them and type \<edit-abbrevs-map>\[edit-abbrevs-redefine] to redefine abbrevs according to your editing. Buffer contains a header line for each abbrev table, which is the abbrev table name in parentheses. This is followed by one line per abbrev in that table: NAME USECOUNT EXPANSION HOOK where NAME and EXPANSION are strings with quotes, USECOUNT is an integer, and HOOK is any valid function or may be omitted (it is usually omitted). Fedit-abbrevs-redefine Redefine abbrevs according to current buffer contents. Fdefine-abbrevs Define abbrevs according to current visible buffer contents. See documentation of `edit-abbrevs' for info on the format of the text you must have in the buffer. With argument, eliminate all abbrev definitions except the ones defined from the buffer now. Fread-abbrev-file Read abbrev definitions from file written with `write-abbrev-file'. Optional argument FILE is the name of the file to read; it defaults to the value of `abbrev-file-name'. Optional second argument QUIETLY non-nil means don't print anything. Fquietly-read-abbrev-file Read abbrev definitions from file written with write-abbrev-file. Optional argument FILE is the name of the file to read; it defaults to the value of `abbrev-file-name'. Does not print anything. Fwrite-abbrev-file Write all abbrev definitions to a file of Lisp code. The file written can be loaded in another session to define the same abbrevs. The argument FILE is the file name to write. Fadd-mode-abbrev Define mode-specific abbrev for last word(s) before point. Argument is how many words before point form the expansion; or zero means the region is the expansion. A negative argument means to undefine the specified abbrev. Reads the abbreviation in the minibuffer. Don't use this function in a Lisp program; use `define-abbrev' instead. Fadd-global-abbrev Define global (all modes) abbrev for last word(s) before point. The prefix argument specifies the number of words before point that form the expansion; or zero means the region is the expansion. A negative argument means to undefine the specified abbrev. This command uses the minibuffer to read the abbreviation. Don't use this function in a Lisp program; use `define-abbrev' instead. Finverse-add-mode-abbrev Define last word before point as a mode-specific abbrev. With prefix argument N, defines the Nth word before point. This command uses the minibuffer to read the expansion. Expands the abbreviation after defining it. Finverse-add-global-abbrev Define last word before point as a global (mode-independent) abbrev. With prefix argument N, defines the Nth word before point. This command uses the minibuffer to read the expansion. Expands the abbreviation after defining it. Fabbrev-prefix-mark Mark current point as the beginning of an abbrev. Abbrev to be expanded starts here rather than at beginning of word. This way, you can expand an abbrev with a prefix: insert the prefix, use this command, then insert the abbrev. Fexpand-region-abbrevs For abbrev occurrence in the region, offer to expand it. The user is asked to type y or n for each occurrence. A prefix argument means don't query; expand all abbrevs. If called from a Lisp program, arguments are START END &optional NOQUERY. Fdefine-derived-mode Create a new mode as a variant of an existing mode. The arguments to this command are as follow: CHILD: the name of the command for the derived mode. PARENT: the name of the command for the parent mode (ie. text-mode). NAME: a string which will appear in the status line (ie. "Hypertext") DOCSTRING: an optional documentation string--if you do not supply one, the function will attempt to invent something useful. BODY: forms to execute just before running the hooks for the new mode. Here is how you could define LaTeX-Thesis mode as a variant of LaTeX mode: (define-derived-mode LaTeX-thesis-mode LaTeX-mode "LaTeX-Thesis") You could then make new key bindings for `LaTeX-thesis-mode-map' without changing regular LaTeX mode. In this example, BODY is empty, and DOCSTRING is generated by default. On a more complicated level, the following command uses sgml-mode as the parent, and then sets the variable `case-fold-search' to nil: (define-derived-mode article-mode sgml-mode "Article" "Major mode for editing technical articles." (setq case-fold-search nil)) Note that if the documentation string had been left out, it would have been generated automatically, with a reference to the keymap. Fderived-mode-class Find the class of a major mode. A mode's class is the first ancestor which is NOT a derived mode. Use the `derived-mode-parent' property of the symbol to trace backwards. Fderived-mode-setup-function-name Construct a setup-function name based on a mode name. Fderived-mode-hooks-name Construct a hooks name based on a mode name. Fderived-mode-map-name Construct a map name based on a mode name. Fderived-mode-syntax-table-name Construct a syntax-table name based on a mode name. Fderived-mode-abbrev-table-name Construct an abbrev-table name based on a mode name. Fderived-mode-init-mode-variables Initialise variables for a new mode. Right now, if they don't already exist, set up a blank keymap, an empty syntax table, and an empty abbrev table -- these will be merged the first time the mode is used. Fderived-mode-make-docstring Construct a docstring for a new mode if none is provided. Fderived-mode-set-keymap Set the keymap of the new mode, maybe merging with the parent. Fderived-mode-set-syntax-table Set the syntax table of the new mode, maybe merging with the parent. Fderived-mode-set-abbrev-table Set the abbrev table if it exists. Always merge its parent into it, since the merge is non-destructive. Fderived-mode-run-hooks Run the hooks if they exist. Fderived-mode-merge-keymaps Merge an old keymap into a new one. The old keymap is set to be the parent of the new one, so that there will be automatic inheritance. Fderived-mode-merge-syntax-tables Merge an old syntax table into a new one. Where the new table already has an entry, nothing is copied from the old one. Vminibuffer-completion-table Alist or obarray used for completion in the minibuffer. This becomes the ALIST argument to `try-completion' and `all-completions'. The value may alternatively be a function, which is given three arguments: STRING, the current buffer contents; PREDICATE, the predicate for filtering possible matches; CODE, which says what kind of things to do. CODE can be nil, t or `lambda'. nil means to return the best completion of STRING, nil if there is none, or t if it is was already a unique completion. t means to return a list of all possible completions of STRING. `lambda' means to return t if STRING is a valid completion as it stands. Vminibuffer-completion-predicate Within call to `completing-read', this holds the PREDICATE argument. Vminibuffer-completion-confirm Non-nil => demand confirmation of completion before exiting minibuffer. Vminibuffer-confirm-incomplete If true, then in contexts where completing-read allows answers which are not valid completions, an extra RET must be typed to confirm the response. This is helpful for catching typos, etc. Vminibuffer-exit-hook Normal hook run just after exit from minibuffer. Vminibuffer-help-form Value that `help-form' takes on inside the minibuffer. Vminibuffer-local-map Default keymap to use when reading from the minibuffer. Vminibuffer-local-completion-map Local keymap for minibuffer input with completion. Vminibuffer-local-must-match-map Local keymap for minibuffer input with completion, for exact match. Vread-expression-map Minibuffer keymap used for reading Lisp expressions. Vread-shell-command-map Minibuffer keymap used by shell-command and related commands. Fminibuffer-keyboard-quit Abort recursive edit. If `zmacs-regions' is true, and the zmacs region is active in this buffer, then this key deactivates the region without beeping. Vminibuffer-history-variable History list symbol to add minibuffer values to. Each minibuffer output is added with (set minibuffer-history-variable (cons STRING (symbol-value minibuffer-history-variable))) Fread-from-minibuffer Read a string from the minibuffer, prompting with string PROMPT. If optional second arg INITIAL-CONTENTS is non-nil, it is a string to be inserted into the minibuffer before reading input. If INITIAL-CONTENTS is (STRING . POSITION), the initial input is STRING, but point is placed POSITION characters into the string. Third arg KEYMAP is a keymap to use whilst reading; if omitted or nil, the default is `minibuffer-local-map'. If fourth arg READ is non-nil, then interpret the result as a lisp object and return that object: in other words, do `(car (read-from-string INPUT-STRING))' Fifth arg HISTORY, if non-nil, specifies a history list and optionally the initial position in the list. It can be a symbol, which is the history list variable to use, or it can be a cons cell (HISTVAR . HISTPOS). In that case, HISTVAR is the history list variable to use, and HISTPOS is the initial position (the position in the list which INITIAL-CONTENTS corresponds to). If HISTORY is `t', no history will be recorded. Positions are counted starting from 1 at the beginning of the list. Sixth arg ABBREV-TABLE, if non-nil, becomes the value of `local-abbrev-table' in the minibuffer. See also the variable completion-highlight-first-word-only for control over completion display. Fcompleting-read Read a string in the minibuffer, with completion. Args: PROMPT, TABLE, PREDICATE, REQUIRE-MATCH, INITIAL-CONTENTS, HISTORY. PROMPT is a string to prompt with; normally it ends in a colon and a space. TABLE is an alist whose elements' cars are strings, or an obarray. PREDICATE limits completion to a subset of TABLE. See `try-completion' for more details on completion, TABLE, and PREDICATE. If REQUIRE-MATCH is non-nil, the user is not allowed to exit unless the input is (or completes to) an element of TABLE or is null. If it is also not t, Return does not exit if it does non-null completion. If INITIAL-CONTENTS is non-nil, insert it in the minibuffer initially. If it is (STRING . POSITION), the initial input is STRING, but point is placed POSITION characters into the string. HISTORY, if non-nil, specifies a history list and optionally the initial position in the list. It can be a symbol, which is the history list variable to use, or it can be a cons cell (HISTVAR . HISTPOS). In that case, HISTVAR is the history list variable to use, and HISTPOS is the initial position (the position in the list which INITIAL-CONTENTS corresponds to). If HISTORY is `t', no history will be recorded. Positions are counted starting from 1 at the beginning of the list. Completion ignores case if the ambient value of `completion-ignore-case' is non-nil. Fminibuffer-complete Complete the minibuffer contents as far as possible. Return nil if there is no valid completion, else t. If no characters can be completed, display a list of possible completions. If you repeat this command after it displayed such a list, scroll the window of possible completions. Fminibuffer-complete-and-exit Complete the minibuffer contents, and maybe exit. Exit if the name is valid with no completion needed. If name was completed to a valid match, a repetition of this command will exit. Fself-insert-and-exit Terminate minibuffer input. Fexit-minibuffer Terminate this minibuffer argument. If minibuffer-confirm-incomplete is true, and we are in a completing-read of some kind, and the contents of the minibuffer is not an existing completion, requires an additional RET before the minibuffer will be exited (assuming that RET was the character that invoked this command: the character in question must be typed again). Fminibuffer-complete-word Complete the minibuffer contents at most a single word. After one word is completed as much as possible, a space or hyphen is added, provided that matches some possible completion. Return nil if there is no valid completion, else t. Fminibuffer-smart-select-highlighted-completion Select the highlighted text under the mouse as a minibuffer response. When the minibuffer is being used to prompt the user for a completion, any valid completions which are visible on the frame will highlight when the mouse moves over them. Clicking \<minibuffer-local-map>\[minibuffer-smart-select-highlighted-completion] will select the highlighted completion under the mouse. If the mouse is clicked while not over a highlighted completion, then the global binding of \[minibuffer-smart-select-highlighted-completion] will be executed instead. In this way you can get at the normal global behavior of \[minibuffer-smart-select-highlighted-completion] as well as the special minibuffer behavior. Fminibuffer-smart-maybe-select-highlighted-completion Like minibuffer-smart-select-highlighted-completion but does nothing if there is no completion (as opposed to executing the global binding). Useful as the value of `mouse-track-click-hook'. Vminibuffer-history Default minibuffer history list. This is used for all minibuffer input except when an alternate history list is specified. Vminibuffer-history-sexp-flag Non-nil when doing history operations on `command-history'. More generally, indicates that the history list being acted on contains expressions rather than strings. Fprevious-matching-history-element Find the previous history element that matches REGEXP. (Previous history elements refer to earlier actions.) With prefix argument N, search for Nth previous match. If N is negative, find the next or Nth next match. Fnext-matching-history-element Find the next history element that matches REGEXP. (The next history element refers to a more recent action.) With prefix argument N, search for Nth next match. If N is negative, find the previous or Nth previous match. Fnext-history-element Insert the next element of the minibuffer history into the minibuffer. Fprevious-history-element Inserts the previous element of the minibuffer history into the minibuffer. Fnext-complete-history-element Get next element of history which is a completion of minibuffer contents. Fprevious-complete-history-element Get previous element of history which is a completion of minibuffer contents. Fread-expression Return a Lisp object read using the minibuffer. Prompt with PROMPT. If non-nil, optional second arg INITIAL-CONTENTS is a string to insert in the minibuffer before reading. Third arg HISTORY, if non-nil, specifies a history list. Fread-string Return a string from the minibuffer, prompting with string PROMPT. If non-nil, optional second arg INITIAL-CONTENTS is a string to insert in the minibuffer before reading. Third arg HISTORY, if non-nil, specifies a history list. Feval-minibuffer Return value of Lisp expression read using the minibuffer. Prompt with PROMPT. If non-nil, optional second arg INITIAL-CONTENTS is a string to insert in the minibuffer before reading. Third arg HISTORY, if non-nil, specifies a history list. Fread-command Read the name of a command and return as a symbol. Prompts with PROMPT. Fread-function Read the name of a function and return as a symbol. Prompts with PROMPT. Fread-variable Read the name of a user variable and return it as a symbol. Prompts with PROMPT. A user variable is one whose documentation starts with a `*' character. Fread-buffer Read the name of a buffer and return as a string. Prompts with PROMPT. Optional second arg DEFAULT is value to return if user enters an empty line. If optional third arg REQUIRE-MATCH is non-nil, only existing buffer names are allowed. Fread-number Reads a number from the minibuffer. Fread-shell-command Just like read-string, but uses read-shell-command-map: \{read-shell-command-map} Fread-file-name Read file name, prompting with PROMPT and completing in directory DIR. This will prompt with a dialog box if appropriate, according to `should-use-dialog-box-p'. Value is not expanded---you must call `expand-file-name' yourself. Value is subject to interpreted by substitute-in-file-name however. Default name to DEFAULT if user enters a null string. (If DEFAULT is omitted, the visited file name is used, except that if INITIAL-CONTENTS is specified, that combined with DIR is used.) Fourth arg MUST-MATCH non-nil means require existing file's name. Non-nil and non-t means also require confirmation after completion. Fifth arg INITIAL-CONTENTS specifies text to start with. Sixth arg HISTORY specifies the history list to use. Default is `file-name-history'. DIR defaults to current buffer's directory default. Fread-directory-name Read directory name, prompting with PROMPT and completing in directory DIR. This will prompt with a dialog box if appropriate, according to `should-use-dialog-box-p'. Value is not expanded---you must call `expand-file-name' yourself. Value is subject to interpreted by substitute-in-file-name however. Default name to DEFAULT if user enters a null string. (If DEFAULT is omitted, the current buffer's default directory is used.) Fourth arg MUST-MATCH non-nil means require existing directory's name. Non-nil and non-t means also require confirmation after completion. Fifth arg INITIAL-CONTENTS specifies text to start with. Sixth arg HISTORY specifies the history list to use. Default is `file-name-history'. DIR defaults to current buffer's directory default. Fappend-expand-filename Append STRING to FILE-STRING differently depending on whether STRING is a username (~string), an environment variable ($string), or a filename (/string). The resultant string is returned with the environment variable or username expanded and resolved to indicate whether it is a file(/result) or a directory (/result/). Fread-face Read the name of a face from the minibuffer and return it as a symbol. Vx-library-search-path Search path used by `read-color' to find rgb.txt. Fread-color Read the name of a color from the minibuffer. Uses `x-library-search-path' to find rgb.txt in order to build a completion table. Fread-coding-system Read a coding-system (or nil) from the minibuffer. Prompting with string PROMPT. Fread-non-nil-coding-system Read a non-nil coding-system from the minibuffer. Prompt with string PROMPT. Fshould-use-dialog-box-p If non-nil, questions should be asked with a dialog box instead of the minibuffer. This looks at `last-command-event' to see if it was a mouse event, and checks whether dialog-support exists and the current device supports dialog boxes. The dialog box is totally disabled if the variable `use-dialog-box' is set to nil. Vlist-mode-map Local map for buffers containing lists of items. Flist-mode Major mode for buffer containing lists of items. Vlist-mode-extent-old-point The value of point when pre-command-hook is called. Used to determine the direction of motion. Fset-list-mode-extent Move to the closest list item and set up the extent for it. This is called from `post-command-hook'. Fprevious-list-mode-item Move to the previous item in list-mode. Fnext-list-mode-item Move to the next item in list-mode. With prefix argument N, move N items (negative N means move backward). Fadd-list-mode-item Add a new list item in list-mode, from START to END in BUFFER. BUFFER defaults to the current buffer. This works by creating an extent for the span of text in question. If ACTIVATE-CALLBACK is non-nil, it should be a function of three arguments (EVENT EXTENT USER-DATA) that will be called when button2 is pressed on the extent. USER-DATA comes from the optional USER-DATA argument. Vcompletion-highlight-first-word-only *Completion will only highlight the first blank delimited word if t. If the variable in not t or nil, the string is taken as a regexp to match for end of highlight Vcompletion-setup-hook Normal hook run at the end of setting up the text of a completion buffer. Vcompletion-default-help-string Form the evaluate to get a help string for completion lists. This string is inserted at the beginning of the buffer. See `display-completion-list'. Fdisplay-completion-list Display the list of completions, COMPLETIONS, using `standard-output'. Each element may be just a symbol or string or may be a list of two strings to be printed as if concatenated. Frob a mousable extent onto each completion. This extent has properties 'mouse-face (so it highlights when the mouse passes over it) and 'list-mode-item (so it can be located). Keywords: :activate-callback (default is `default-choose-completion') See `add-list-mode-item'. :user-data Value passed to activation callback. :window-width If non-nil, width to use in displaying the list, instead of the actual window's width. :help-string (default is the value of `completion-default-help-string') Form to evaluate to get a string to insert at the beginning of the completion list buffer. This is evaluated when that buffer is the current buffer and after it has been put into completion-list-mode. :reference-buffer (default is the current buffer) This specifies the value of `completion-reference-buffer' in the completion buffer. This specifies the buffer (normally a minibuffer) that `default-choose-completion' will insert the completion into. At the end, run the normal hook `completion-setup-hook'. It can find the completion buffer in `standard-output'. If `completion-highlight-first-word-only' is non-nil, then only the start of the string is highlighted. Vcompletion-display-completion-list-function Function to set up the list of completions in the completion buffer. The function is called with one argument, the sorted list of completions. Particular minibuffer interface functions (e.g. `read-file-name') may want to change this. To do that, set a local value for this variable in the minibuffer; that ensures that other minibuffer invocations will not be affected. Fminibuffer-completion-help Display a list of possible completions of the current minibuffer contents. The list of completions is determined by calling `all-completions', passing it the current minibuffer contents, the value of `minibuffer-completion-table', and the value of `minibuffer-completion-predicate'. The list is displayed by calling the value of `completion-display-completion-list-function' on the sorted list of completions, with the standard output set to the completion buffer. Fcompletion-list-mode Major mode for buffers showing lists of possible completions. Type \<completion-list-mode-map>\[choose-completion] in the completion list to select the completion near point. Use \<completion-list-mode-map>\[mouse-choose-completion] to select one with the mouse. Vcompletion-reference-buffer Record the buffer that was current when the completion list was requested. This is a local variable in the completion list buffer. Initial value is nil to avoid some compiler warnings. Vcompletion-base-size Number of chars at beginning of minibuffer not involved in completion. This is a local variable in the completion list buffer but it talks about the buffer in `completion-reference-buffer'. If this is nil, it means to compare text to determine which part of the tail end of the buffer's text is involved in completion. Fdelete-completion-window Delete the completion list window. Go to the window from which completion was requested. Fdefault-choose-completion Click on an alternative in the `*Completions*' buffer to choose it. Fswitch-to-completions Select the completion list window. Fmouse-drag-modeline Resize a window by dragging its modeline. This command should be bound to a button-press event in modeline-map. Holding down a mouse button and moving the mouse up and down will make the clicked-on window taller or shorter. Fmouse-release-modeline Handle modeline click EVENT on LINE-NUM by switching buffers. If click on left half of a frame's modeline, bury current buffer. If click on right half of a frame's modeline, raise bottommost buffer. Args are: EVENT, the mouse release event, and LINE-NUM, the line number within the frame at which the mouse was first depressed. Vmodeline-map Keymap consulted for mouse-clicks on the modeline of a window. This variable may be buffer-local; its value will be looked up in the buffer of the window whose modeline was clicked upon. Vminor-mode-alist Alist saying how to show minor modes in the modeline. Each element looks like (VARIABLE STRING); STRING is included in the modeline iff VARIABLE's value is non-nil. Actually, STRING need not be a string; any possible modeline element is okay. See `modeline-format'. Vminor-mode-map-alist Alist of keymaps to use for minor modes. Each element looks like (VARIABLE . KEYMAP); KEYMAP is used to read key sequences and look up bindings iff VARIABLE's value is non-nil. If two active keymaps bind the same key, the keymap appearing earlier in the list takes precedence. Vmodeline-mousable-minor-mode-extent Extent managing the mousable minor mode modeline strings. Fadd-minor-mode Add a minor mode to `minor-mode-alist' and `minor-mode-map-alist'. TOGGLE is a symbol whose value as a variable specifies whether the minor mode is active. If TOGGLE has the `:menu-tag' property set to a string, that string will be used as the label on the `modeline-minor-mode-menu' instead of TOGGLE's symbol-name. TOGGLE may have an `:included' property, which determines whether a menu button will be shown for this minor mode in the `modeline-minor-mode-menu'. This should be either a boolean variable, or an expression evaluating to t or nil. (See the documentation of `current-menubar' for more information.) It may have an `:active' property also, as documented in `current-menubar'. NAME is the name that should appear in the modeline. It should either be a string beginning with a space, or a symbol with a similar string as its value. KEYMAP is a keymap to make active when the minor mode is active. AFTER is the toggling symbol used for another minor mode. If AFTER is non-nil, then it is used to position the new mode in the minor-mode alists. TOGGLE-FUN specifies an interactive function that is called to toggle the mode on and off; this affects what happens when button2 is pressed on the mode, and when button3 is pressed somewhere in the list of modes. If TOGGLE-FUN is nil and TOGGLE names an interactive function, TOGGLE is used as the toggle function. Example: (put 'view-minor-mode :menu-tag "View (minor)") (put 'view-minor-mode :included '(buffer-file-name)) (add-minor-mode 'view-minor-mode " View" view-mode-map) Fmodeline-minor-mode-menu The menu that pops up when you press `button3' inside the parentheses on the modeline. Vmodeline-minor-mode-map Keymap consulted for mouse-clicks on the minor-mode modeline list. Vmodeline-minor-mode-extent Extent covering the minor mode modeline strings. Vmodeline-buffer-id-left-map Keymap consulted for mouse-clicks on the left half of the buffer-id string. Vmodeline-buffer-id-right-map Keymap consulted for mouse-clicks on the right half of the buffer-id string. Vmodeline-buffer-id-extent Extent covering the whole of the buffer-id string. Vmodeline-buffer-id-left-extent Extent covering the left half of the buffer-id string. Vmodeline-buffer-id-right-extent Extent covering the right half of the buffer-id string. Vmodeline-buffer-identification Modeline control for identifying the buffer being displayed. Its default value is "XEmacs: %17b" (NOT!). Major modes that edit things other than ordinary files may change this (e.g. Info, Dired,...) Vmodeline-process Modeline control for displaying info on process status. Normally nil in most modes, since there is no process to display. Vmodeline-modified-map Keymap consulted for mouse-clicks on the modeline-modified string. Vmodeline-modified-extent Extent covering the modeline-modified string. Vmodeline-modified Modeline control for displaying whether current buffer is modified. Vmodeline-narrowed-map Keymap consulted for mouse-clicks on the modeline-narrowed string. Vmodeline-narrowed-extent Extent covering the modeline-narrowed string. Fmodeline-toggle-read-only Change whether this buffer is visiting its file read-only. With arg, set read-only iff arg is positive. This function is designed to be called when the read-only indicator on the modeline is clicked. It will call `vc-toggle-read-only' if available, otherwise it will call the usual `toggle-read-only'. Vcommand-line-processed t once command line has been processed Vinhibit-startup-message *Non-nil inhibits the initial startup message. This is for use in your personal init file, once you are familiar with the contents of the startup message. Vinhibit-default-init *Non-nil inhibits loading the `default' library. Vcommand-line-args-left List of command-line args not yet processed. Vcommand-line-default-directory Default directory to use for command line arguments. This is normally copied from `default-directory' when XEmacs starts. Vbefore-init-hook Functions to call after handling urgent options but before init files. The frame system uses this to open frames to display messages while XEmacs loads the user's initialization file. Vafter-init-hook *Functions to call after loading the init file (`~/.emacs'). The call is not protected by a condition-case, so you can set `debug-on-error' in `.emacs', and put all the actual code on `after-init-hook'. Vterm-setup-hook *Functions to be called after loading terminal-specific Lisp code. See `run-hooks'. This variable exists for users to set, so as to override the definitions made by the terminal-specific file. XEmacs never sets this variable itself. Vkeyboard-type The brand of keyboard you are using. This variable is used to define the proper function and keypad keys for use under X. It is used in a fashion analogous to the environment value TERM. Vwindow-setup-hook Normal hook run to initialize window system display. XEmacs runs this hook after processing the command line arguments and loading the user's init file. Vinitial-major-mode Major mode command symbol to use for the initial *scratch* buffer. Vinit-file-user Identity of user whose `~/.emacs' file is or was read. The value is nil if no init file is being used; otherwise, it may be either the null string, meaning that the init file was taken from the user that originally logged in, or it may be a string containing a user's name. In either of the latter cases, `(concat "~" init-file-user "/")' evaluates to the name of the directory where the `.emacs.el' file was looked for. Setting `init-file-user' does not prevent Emacs from loading `site-start.el'. The only way to do that is to use `--no-site-file'. Vsite-start-file File containing site-wide run-time initializations. This file is loaded at run-time before `~/.xemacs/init.el'. It contains inits that need to be in place for the entire site, but which, due to their higher incidence of change, don't make sense to load into XEmacs' dumped image. Thus, the run-time load order is: 1. file described in this variable, if non-nil; 2. `~/.xemacs/init.el'; 3. `/path/to/xemacs/lisp/default.el'. Don't use the `site-start.el' file for things some users may not like. Put them in `default.el' instead, so that users can more easily override them. Users can prevent loading `default.el' with the `-q' option or by setting `inhibit-default-init' in their own init files, but inhibiting `site-start.el' requires `--no-site-file', which is less convenient. Vmail-host-address *Name of this machine, for purposes of naming users. Vuser-mail-address *Full mailing address of this user. This is initialized based on `mail-host-address', after your init file is read, in case it sets `mail-host-address'. Vauto-save-list-file-prefix Prefix for generating auto-save-list-file-name. Emacs's pid and the system name will be appended to this prefix to create a unique file name. Vinit-file-loaded True after the user's init file has been loaded (or suppressed with -q). This will be true when `after-init-hook' is run and at all times after, and will not be true at any time before. Vcommand-switch-alist Alist of command-line switches. Elements look like (SWITCH-STRING . HANDLER-FUNCTION). HANDLER-FUNCTION receives switch name as sole arg; remaining command-line args are in the variable `command-line-args-left'. Fcommand-line-do-help Print the XEmacs usage message and exit. Fcommand-line-do-funcall Invoke the named lisp function with no arguments. <function> Fcommand-line-do-eval Evaluate the lisp form. Quote it carefully. <form> Fcommand-line-do-load Load the named file of Lisp code into XEmacs. <file> Fcommand-line-do-insert Insert file into the current buffer. <file> Fcommand-line-do-kill Exit XEmacs. Fcommand-line-do-version Print version info and exit. Fearly-error-handler You should probably not be using this. Vinitial-scratch-message Initial message displayed in *scratch* buffer at startup. If this is nil, no message will be displayed. Vuser-init-directory Directory where user initialization and user-installed packages may go. Note that `~' is automatically prepended to this whereever it is used. Fload-user-init-file This function actually reads the init files. In XEmacs 20.3 this function only looks at .emacs. In XEmacs 20.4 this function will first try .xemacs/init, then try .emacs, but only load one of the two. Fload-options-file Load the file of saved options (from the Options menu) called FILENAME. Currently this does nothing but call `load', but it might be redefined in the future to support automatically converting older options files to a new format, when variables have changed, etc. Vstartup-presentation-hack-keymap Putting yesterday in the future tomorrow. Fcopy-from-above-command Copy characters from previous nonblank line, starting just above point. Copy ARG characters, but not past the end of that line. If no argument given, copy the entire rest of the line. The characters copied are inserted in the buffer before point. Vhelp-map Keymap for characters following the Help key. Fhyperbole Hyperbole info manager menus. Ffinder-by-keyword Find packages matching a given keyword. Fhelp-mode Major mode for viewing help text. Entry to this mode runs the normal hook `help-mode-hook'. Commands: \{help-mode-map} Fdescribe-function-at-point Describe directly the function at point in the other window. Fdescribe-variable-at-point Describe directly the variable at point in the other window. Fhelp-next-symbol Move point to the next quoted symbol. Fhelp-prev-symbol Move point to the previous quoted symbol. Fhelp-mode-quit Exits from help mode, possibly restoring the previous window configuration. Bury the help buffer to the end of the buffer list. Fkey-or-menu-binding Return the command invoked by KEY. Like `key-binding', but handles menu events and toolbar presses correctly. KEY is any value returned by `next-command-event'. MENU-FLAG is a symbol that should be set to T if KEY is a menu event, or NIL otherwise Fdescribe-key-briefly Print the name of the function KEY invokes. KEY is a string. Fprint-help-return-message Display or return message saying how to restore windows after help command. Computes a message and applies the optional argument FUNCTION to it. If FUNCTION is nil, applies `message' to it, thus printing it. Fdescribe-key Display documentation of the function invoked by KEY. KEY is a string, or vector of events. When called interactively, KEY may also be a menu selection. Fdescribe-mode Display documentation of current major mode and minor modes. For this to work correctly for a minor mode, the mode's indicator variable (listed in `minor-mode-alist') must also be a function whose documentation describes the minor mode. Fdescribe-distribution Display info on how to obtain the latest version of XEmacs. Fdescribe-beta Display info on how to deal with Beta versions of XEmacs. Fdescribe-copying Display info on how you may redistribute copies of XEmacs. Fdescribe-pointer Show a list of all defined mouse buttons, and their definitions. Fdescribe-project Display info on the GNU project. Fdescribe-no-warranty Display info on all the kinds of warranty XEmacs does NOT have. Fdescribe-bindings Show a list of all defined keys, and their definitions. The list is put in a buffer, which is displayed. If the optional argument PREFIX is supplied, only commands which start with that sequence of keys are described. If the second argument (prefix arg, interactively) is non-null then only the mouse bindings are displayed. Fdescribe-prefix-bindings Describe the bindings of the prefix used to reach this command. The prefix described consists of all but the last event of the key sequence that ran this command. Fview-emacs-news Display info on recent changes to XEmacs. Fxemacs-www-page Go to the XEmacs World Wide Web page. Fxemacs-www-faq View the latest and greatest XEmacs FAQ using the World Wide Web. Fxemacs-local-faq View the local copy of the XEmacs FAQ. If you have access to the World Wide Web, you should use `xemacs-www-faq' instead, to ensure that you get the most up-to-date information. Fview-lossage Display recent input keystrokes and recent minibuffer messages. The number of keys shown is controlled by `view-lossage-key-count'. The number of messages shown is controlled by `view-lossage-message-count'. Fhelp-for-help You have typed \[help-for-help], the help character. Type a Help option: (Use SPC or DEL to scroll through this text. Type \<help-map>\[help-quit] to exit the Help command.) \[hyper-apropos] Type a substring; it shows a hypertext list of functions and variables that contain that substring. See also the `apropos' command. \[command-apropos] Type a substring; it shows a list of commands (interactively callable functions) that contain that substring. \[describe-bindings] Table of all key bindings. \[describe-key-briefly] Type a command key sequence; it displays the function name that sequence runs. \[Info-goto-emacs-command-node] Type a function name; it displays the Info node for that command. \[describe-function] Type a function name; it shows its documentation. \[Info-elisp-ref] Type a function name; it jumps to the full documentation in the XEmacs Lisp Programmer's Manual. \[xemacs-local-faq] Local copy of the XEmacs FAQ. \[info] Info documentation reader. \[Info-query] Type an Info file name; it displays it in Info reader. \[describe-key] Type a command key sequence; it displays the documentation for the command bound to that key. \[Info-goto-emacs-key-command-node] Type a command key sequence; it displays the Info node for the command bound to that key. \[view-lossage] Recent input keystrokes and minibuffer messages. \[describe-mode] Documentation of current major and minor modes. \[view-emacs-news] News of recent XEmacs changes. \[finder-by-keyword] Type a topic keyword; it finds matching packages. \[describe-pointer] Table of all mouse-button bindings. \[describe-syntax] Contents of syntax table with explanations. \[help-with-tutorial] XEmacs learn-by-doing tutorial. \[describe-variable] Type a variable name; it displays its documentation and value. \[where-is] Type a command name; it displays which keystrokes invoke that command. \[describe-distribution] XEmacs ordering information. \[describe-no-warranty] Information on absence of warranty for XEmacs. \[describe-copying] XEmacs copying permission (General Public License). Ffunction-called-at-point Return the function which is called by the list containing point. If that gives no function, return the function whose name is around point. If that doesn't give a function, return nil. Ffunction-at-point Return the function whose name is around point. If that gives no function, return the function which is called by the list containing point. If that doesn't give a function, return nil. Fdescribe-function Display the full documentation of FUNCTION (a symbol). When run interactively, it defaults to any function found by `function-at-point'. Ffunction-obsolete-p Return non-nil if FUNCTION is obsolete. Ffunction-obsoleteness-doc If FUNCTION is obsolete, return a string describing this. Ffunction-compatible-p Return non-nil if FUNCTION is present for Emacs compatibility. Ffunction-compatibility-doc If FUNCTION is Emacs compatible, return a string describing this. Fvariable-obsolete-p Return non-nil if VARIABLE is obsolete. Fvariable-obsoleteness-doc If VARIABLE is obsolete, return a string describing this. Fvariable-compatible-p Return non-nil if VARIABLE is Emacs compatible. Fvariable-compatibility-doc If VARIABLE is Emacs compatible, return a string describing this. Fbuilt-in-variable-doc Return a string describing whether VARIABLE is built-in. Fdescribe-variable Display the full documentation of VARIABLE (a symbol). Fsorted-key-descriptions Sort and separate the key descriptions for KEYS. The sorting is done by length (shortest bindings first), and the bindings are separated with SEPARATOR (", " by default). Fwhere-is Print message listing key sequences that invoke specified command. Argument is a command definition, usually a symbol with a function definition. When run interactively, it defaults to any function found by `function-at-point'. Fdescribe-syntax Describe the syntax specifications in the syntax table. The descriptions are inserted in a buffer, which is then displayed. Flist-processes Display a list of all processes. (Any processes listed as Exited or Signaled are actually eliminated after the listing is made.) Vbackup-inhibited Non-nil means don't make a backup, regardless of the other parameters. This variable is intended for use by making it local to a buffer. But it is local only if you make it local. Vbackup-enable-predicate Predicate that looks at a file name and decides whether to make backups. Called with an absolute file name as argument, it returns t to enable backup. Vbuffer-file-number The device number and file number of the file visited in the current buffer. The value is a list of the form (FILENUM DEVNUM). This pair of numbers uniquely identifies the file. If the buffer is visiting a new file, the value is nil. Vbuffer-file-numbers-unique Non-nil means that buffer-file-number uniquely identifies files. Vfind-file-not-found-hooks List of functions to be called for `find-file' on nonexistent file. These functions are called as soon as the error is detected. `buffer-file-name' is already set up. The functions are called in the order given until one of them returns non-nil. Vfind-file-hooks List of functions to be called after a buffer is loaded from a file. The buffer's local variables (if any) will have been processed before the functions are called. Vwrite-file-hooks List of functions to be called before writing out a buffer to a file. If one of them returns non-nil, the file is considered already written and the rest are not called. These hooks are considered to pertain to the visited file. So this list is cleared if you change the visited file name. See also `write-contents-hooks' and `continue-save-buffer'. Vlocal-write-file-hooks Just like `write-file-hooks', except intended for per-buffer use. The functions in this list are called before the ones in `write-file-hooks'. This variable is meant to be used for hooks that have to do with a particular visited file. Therefore, it is a permanent local, so that changing the major mode does not clear it. However, calling `set-visited-file-name' does clear it. Vafter-set-visited-file-name-hooks List of functions to be called after \[set-visited-file-name] or during \[write-file]. You can use this hook to restore local values of write-file-hooks, after-save-hook, and revert-buffer-function, which pertain to a specific file and therefore are normally killed by a rename. Put hooks pertaining to the buffer contents on write-contents-hooks and revert-buffer-insert-file-contents-function. Vwrite-contents-hooks List of functions to be called before writing out a buffer to a file. If one of them returns non-nil, the file is considered already written and the rest are not called. These hooks are considered to pertain to the buffer's contents, not to the particular visited file; thus, `set-visited-file-name' does not clear this variable, but changing the major mode does clear it. See also `write-file-hooks' and `continue-save-buffer'. Vwrite-file-data-hooks List of functions to be called to put the bytes on disk. These functions receive the name of the file to write to as argument. The default behavior is to call (write-region (point-min) (point-max) filename nil t) If one of them returns non-nil, the file is considered already written and the rest are not called. These hooks are considered to pertain to the visited file. So this list is cleared if you change the visited file name. See also `write-file-hooks'. Fconvert-standard-filename Convert a standard file's name to something suitable for the current OS. This function's standard definition is trivial; it just returns the argument. However, on some systems, the function is redefined with a definition that really does change some file names. Fpwd Show the current default directory. Vcd-path Value of the CDPATH environment variable, as a list. Not actually set up until the first time you use it. Vpath-separator Character used to separate concatenated paths. Fparse-colon-path Explode a colon-separated list of paths into a string list. Fcd-absolute Change current directory to given absolute file name DIR. Fcd Make DIR become the current buffer's default directory. If your environment includes a `CDPATH' variable, try each one of that colon-separated list of directories when resolving a relative directory name. Fload-file Load the Lisp file named FILE. Ffile-local-copy Copy the file FILE into a temporary file on this machine. Returns the name of the local copy, or nil, if FILE is directly accessible. Fcompute-buffer-file-truename Recomputes BUFFER's value of `buffer-file-truename' based on the current value of `buffer-file-name'. BUFFER defaults to the current buffer if unspecified. Ffile-chase-links Chase links in FILENAME until a name that is not a link. Does not examine containing directories for links, unlike `file-truename'. Fswitch-to-other-buffer Switch to the previous buffer. With a numeric arg, n, switch to the nth most recent buffer. With an arg of 0, buries the current buffer at the bottom of the buffer stack. Fswitch-to-buffer-other-window Select buffer BUFFER in another window. Fswitch-to-buffer-other-frame Switch to buffer BUFFER in a newly-created frame. Ffind-file Edit file FILENAME. Switch to a buffer visiting file FILENAME, creating one if none already exists. Under XEmacs/Mule, optional second argument specifies the coding system to use when decoding the file. Interactively, with a prefix argument, you will be prompted for the coding system. Ffind-file-other-window Edit file FILENAME, in another window. May create a new window, or reuse an existing one. See the function `display-buffer'. Under XEmacs/Mule, optional second argument specifies the coding system to use when decoding the file. Interactively, with a prefix argument, you will be prompted for the coding system. Ffind-file-other-frame Edit file FILENAME, in a newly-created frame. Under XEmacs/Mule, optional second argument specifies the coding system to use when decoding the file. Interactively, with a prefix argument, you will be prompted for the coding system. Ffind-file-read-only Edit file FILENAME but don't allow changes. Like \[find-file] but marks buffer as read-only. Use \[toggle-read-only] to permit editing. Under XEmacs/Mule, optional second argument specifies the coding system to use when decoding the file. Interactively, with a prefix argument, you will be prompted for the coding system. Ffind-file-read-only-other-window Edit file FILENAME in another window but don't allow changes. Like \[find-file-other-window] but marks buffer as read-only. Use \[toggle-read-only] to permit editing. Under XEmacs/Mule, optional second argument specifies the coding system to use when decoding the file. Interactively, with a prefix argument, you will be prompted for the coding system. Ffind-file-read-only-other-frame Edit file FILENAME in another frame but don't allow changes. Like \[find-file-other-frame] but marks buffer as read-only. Use \[toggle-read-only] to permit editing. Under XEmacs/Mule, optional second argument specifies the coding system to use when decoding the file. Interactively, with a prefix argument, you will be prompted for the coding system. Ffind-alternate-file-other-window Find file FILENAME as a replacement for the file in the next window. This command does not select that window. Under XEmacs/Mule, optional second argument specifies the coding system to use when decoding the file. Interactively, with a prefix argument, you will be prompted for the coding system. Ffind-alternate-file Find file FILENAME, select its buffer, kill previous buffer. If the current buffer now contains an empty file that you just visited (presumably by mistake), use this command to visit the file you really want. Under XEmacs/Mule, optional second argument specifies the coding system to use when decoding the file. Interactively, with a prefix argument, you will be prompted for the coding system. Fcreate-file-buffer Create a suitably named buffer for visiting FILENAME, and return it. FILENAME (sans directory) is used unchanged if that name is free; otherwise a string <2> or <3> or ... is appended to get an unused name. Fgenerate-new-buffer Create and return a buffer with a name based on NAME. Choose the buffer's name using `generate-new-buffer-name'. Vabbreviated-home-dir The user's homedir abbreviated according to `directory-abbrev-alist'. Fabbreviate-file-name Return a version of FILENAME shortened using `directory-abbrev-alist'. See documentation of variable `directory-abbrev-alist' for more information. If optional argument HACK-HOMEDIR is non-nil, then this also substitutes "~" for the user's home directory. Ffind-buffer-visiting Return the buffer visiting file FILENAME (a string). This is like `get-file-buffer', except that it checks for any buffer visiting the same file, possibly under a different name. If there is no such live buffer, return nil. Finsert-file-contents-literally Like `insert-file-contents', q.v., but only reads in the file. A buffer may be modified in several ways after reading into the buffer due to advanced Emacs features, such as file-name-handlers, format decoding, find-file-hooks, etc. This function ensures that none of these modifications will take place. Ffind-file-noselect Read file FILENAME into a buffer and return the buffer. If a buffer exists visiting FILENAME, return that one, but verify that the file has not changed since visited or saved. The buffer is not selected, just returned to the caller. If NOWARN is non-nil, warning messages about several potential problems will be suppressed. Fafter-find-file Called after finding a file and by the default revert function. Sets buffer mode, parses local variables. Optional args ERROR, WARN, and NOAUTO: ERROR non-nil means there was an error in reading the file. WARN non-nil means warn if there exists an auto-save file more recent than the visited file. NOAUTO means don't mess with auto-save mode. Fourth arg AFTER-FIND-FILE-FROM-REVERT-BUFFER non-nil means this call was from `revert-buffer'. Fifth arg NOMODES non-nil means don't alter the file's modes. Finishes by calling the functions in `find-file-hooks'. Fnormal-mode Choose the major mode for this buffer automatically. Also sets up any specified local variables of the file. Uses the visited file name, the -*- line, and the local variables spec. This function is called automatically from `find-file'. In that case, we may set up specified local variables depending on the value of `enable-local-variables': if it is t, we do; if it is nil, we don't; otherwise, we query. `enable-local-variables' is ignored if you run `normal-mode' explicitly. Vauto-mode-alist Alist of filename patterns vs. corresponding major mode functions. Each element looks like (REGEXP . FUNCTION) or (REGEXP FUNCTION NON-NIL). (NON-NIL stands for anything that is not nil; the value does not matter.) Visiting a file whose name matches REGEXP specifies FUNCTION as the mode function to use. FUNCTION will be called, unless it is nil. If the element has the form (REGEXP FUNCTION NON-NIL), then after calling FUNCTION (if it's not nil), we delete the suffix that matched REGEXP and search the list again for another match. Vinterpreter-mode-alist Alist mapping interpreter names to major modes. This alist is used to guess the major mode of a file based on the contents of the first line. This line often contains something like: #!/bin/sh but may contain something more imaginative like #! /bin/env python or eval 'exec perl -w -S $0 ${1+"$@"}'. Each alist element looks like (INTERPRETER . MODE). The car of each element is a regular expression which is compared with the name of the interpreter specified in the first line. If it matches, mode MODE is selected. Vinhibit-first-line-modes-regexps List of regexps; if one matches a file name, don't look for `-*-'. Vinhibit-first-line-modes-suffixes List of regexps for what to ignore, for `inhibit-first-line-modes-regexps'. When checking `inhibit-first-line-modes-regexps', we first discard from the end of the file name anything that matches one of these regexps. Vuser-init-file File name including directory of user's initialization file. Fset-auto-mode Select major mode appropriate for current buffer. This checks for a -*- mode tag in the buffer's text, compares the filename against the entries in `auto-mode-alist', or checks the interpreter that runs this file against `interpreter-mode-alist'. It does not check for the `mode:' local variable in the Local Variables section of the file; for that, use `hack-local-variables'. If `enable-local-variables' is nil, this function does not check for a -*- mode tag. Vhack-local-variables-hook Normal hook run after processing a file's local variables specs. Major modes can use this to examine user-specified local variables in order to initialize other data structure based on them. This hook runs even if there were no local variables or if their evaluation was suppressed. See also `enable-local-variables' and `enable-local-eval'. Fhack-local-variables Parse, and bind or evaluate as appropriate, any local variables for current buffer. Vignored-local-variables Variables to be ignored in a file's local variable spec. Fset-visited-file-name Change name of file visited in current buffer to FILENAME. The next time the buffer is saved it will go in the newly specified file. nil or empty string as argument means make buffer not be visiting any file. Remember to delete the initial contents of the minibuffer if you wish to pass an empty string as the argument. Fwrite-file Write current buffer into file FILENAME. Makes buffer visit that file, and marks it not modified. If the buffer is already visiting a file, you can specify a directory name as FILENAME, to write a file of the same old name in that directory. If optional second arg CONFIRM is non-nil, ask for confirmation for overwriting an existing file. Under XEmacs/Mule, optional third argument specifies the coding system to use when encoding the file. Interactively, with a prefix argument, you will be prompted for the coding system. Fbackup-buffer Make a backup of the disk file visited by the current buffer, if appropriate. This is normally done before saving the buffer the first time. If the value is non-nil, it is the result of `file-modes' on the original file; this means that the caller, after saving the buffer, should change the modes of the new file to agree with the old modes. Ffile-name-sans-versions Return FILENAME sans backup versions or strings. This is a separate procedure so your site-init or startup file can redefine it. If the optional argument KEEP-BACKUP-VERSION is non-nil, we do not remove backup version numbers, only true file version numbers. Ffile-ownership-preserved-p Returns t if deleting FILE and rewriting it would preserve the owner. Ffile-name-sans-extension Return FILENAME sans final "extension". The extension, in a file name, is the part that follows the last `.'. Fmake-backup-file-name Create the non-numeric backup file name for FILE. This is a separate function so you can redefine it for customization. Fbackup-file-name-p Return non-nil if FILE is a backup file name (numeric or not). This is a separate function so you can redefine it for customization. You may need to redefine `file-name-sans-versions' as well. Fbackup-extract-version Given the name of a numeric backup file, return the backup number. Uses the free variable `bv-length', whose value should be the index in the name where the version number begins. Ffind-backup-file-name Find a file name for a backup file, and suggestions for deletions. Value is a list whose car is the name for the backup file and whose cdr is a list of old versions to consider deleting now. If the value is nil, don't make a backup. Ffile-nlinks Return number of names file FILENAME has. Ffile-relative-name Convert FILENAME to be relative to DIRECTORY (default: default-directory). Fsave-buffer Save current buffer in visited file if modified. Versions described below. By default, makes the previous version into a backup file if previously requested or if this is the first save. With 1 or 3 \[universal-argument]'s, marks this version to become a backup when the next save is done. With 2 or 3 \[universal-argument]'s, unconditionally makes the previous version into a backup file. With argument of 0, never makes the previous version into a backup file. If a file's name is FOO, the names of its numbered backup versions are FOO.~i~ for various integers i. A non-numbered backup file is called FOO~. Numeric backups (rather than FOO~) will be made if value of `version-control' is not the atom `never' and either there are already numeric versions of the file being backed up, or `version-control' is non-nil. We don't want excessive versions piling up, so there are variables `kept-old-versions', which tells XEmacs how many oldest versions to keep, and `kept-new-versions', which tells how many newest versions to keep. Defaults are 2 old versions and 2 new. `dired-kept-versions' controls dired's clean-directory (.) command. If `delete-old-versions' is nil, system will query user before trimming versions. Otherwise it does it silently. Fdelete-auto-save-file-if-necessary Delete auto-save file for current buffer if `delete-auto-save-files' is t. Normally delete only if the file was written by this XEmacs since the last real save, but optional arg FORCE non-nil means delete anyway. Vafter-save-hook Normal hook that is run after a buffer is saved to its file. These hooks are considered to pertain to the visited file. So this list is cleared if you change the visited file name. Fbasic-save-buffer Save the current buffer in its visited file, if it has been modified. After saving the buffer, run `after-save-hook'. Fcontinue-save-buffer Provide a clean way for a write-file-hook to wrap AROUND the execution of the remaining hooks and writing to disk. Do not call this function except from a functions on the write-file-hooks or write-contents-hooks list. A hook that calls this function must return non-nil, to signal completion to its caller. continue-save-buffer always returns non-nil. Fsave-some-buffers Save some modified file-visiting buffers. Asks user about each one. Optional argument (the prefix) non-nil means save all with no questions. Optional second argument EXITING means ask about certain non-file buffers as well as about file buffers. Fnot-modified Mark current buffer as unmodified, not needing to be saved. With prefix arg, mark buffer as modified, so \[save-buffer] will save. It is not a good idea to use this function in Lisp programs, because it prints a message in the minibuffer. Instead, use `set-buffer-modified-p'. Ftoggle-read-only Change whether this buffer is visiting its file read-only. With arg, set read-only iff arg is positive. Finsert-file Insert contents of file FILENAME into buffer after point. Set mark after the inserted text. Under XEmacs/Mule, optional second argument specifies the coding system to use when decoding the file. Interactively, with a prefix argument, you will be prompted for the coding system. This function is meant for the user to run interactively. Don't call it from programs! Use `insert-file-contents' instead. (Its calling sequence is different; see its documentation). Fappend-to-file Append the contents of the region to the end of file FILENAME. When called from a function, expects three arguments, START, END and FILENAME. START and END are buffer positions saying what text to write. Under XEmacs/Mule, optional fourth argument specifies the coding system to use when encoding the file. Interactively, with a prefix argument, you will be prompted for the coding system. Ffile-newest-backup Return most recent backup file for FILENAME or nil if no backups exist. Frename-uniquely Rename current buffer to a similar name not already taken. This function is useful for creating multiple shell process buffers or multiple mail buffers, etc. Fmake-directory-path Create all the directories along path that don't exist yet. Fmake-directory Create the directory DIR and any nonexistent parent dirs. Interactively, the default choice of directory to create is the current default directory for file names. That is useful when you have visited a file in a nonexistent directory. Noninteractively, the second (optional) argument PARENTS says whether to create parent directories if they don't exist. Vrevert-buffer-function Function to use to revert this buffer, or nil to do the default. The function receives two arguments IGNORE-AUTO and NOCONFIRM, which are the arguments that `revert-buffer' received. Vrevert-buffer-insert-file-contents-function Function to use to insert contents when reverting this buffer. Gets two args, first the nominal file name to use, and second, t if reading the auto-save file. Vbefore-revert-hook Normal hook for `revert-buffer' to run before reverting. If `revert-buffer-function' is used to override the normal revert mechanism, this hook is not used. Vafter-revert-hook Normal hook for `revert-buffer' to run after reverting. Note that the hook value that it runs is the value that was in effect before reverting; that makes a difference if you have buffer-local hook functions. If `revert-buffer-function' is used to override the normal revert mechanism, this hook is not used. Vrevert-buffer-internal-hook Don't use this. Frevert-buffer Replace the buffer text with the text of the visited file on disk. This undoes all changes since the file was visited or saved. With a prefix argument, offer to revert from latest auto-save file, if that is more recent than the visited file. This command also works for special buffers that contain text which doesn't come from a file, but reflects some other data base instead: for example, Dired buffers and buffer-list buffers. In these cases, it reconstructs the buffer contents from the appropriate data base. When called from Lisp, the first argument is IGNORE-AUTO; only offer to revert from the auto-save file when this is nil. Note that the sense of this argument is the reverse of the prefix argument, for the sake of backward compatibility. IGNORE-AUTO is optional, defaulting to nil. Optional second argument NOCONFIRM means don't ask for confirmation at all. Optional third argument PRESERVE-MODES non-nil means don't alter the files modes. Normally we reinitialize them using `normal-mode'. If the value of `revert-buffer-function' is non-nil, it is called to do the work. The default revert function runs the hook `before-revert-hook' at the beginning and `after-revert-hook' at the end. Frecover-file Visit file FILE, but get contents from its last auto-save file. Frecover-session Recover auto save files from a previous Emacs session. This command first displays a Dired buffer showing you the previous sessions that you could recover from. To choose one, move point to the proper line and then type C-c C-c. Then you'll be asked about a number of files to recover. Frecover-session-finish Choose one saved session to recover auto-save files from. This command is used in the special Dired buffer created by \[recover-session]. Fkill-some-buffers For each buffer, ask whether to kill it. Fauto-save-mode Toggle auto-saving of contents of current buffer. With prefix argument ARG, turn auto-saving on if positive, else off. Frename-auto-save-file Adjust current buffer's auto save file name for current conditions. Also rename any existing auto save file, if it was made in this session. Fmake-auto-save-file-name Return file name to use for auto-saves of current buffer. Does not consider `auto-save-visited-file-name' as that variable is checked before calling this function. You can redefine this for customization. See also `auto-save-file-name-p'. Fauto-save-file-name-p Return non-nil if FILENAME can be yielded by `make-auto-save-file-name'. FILENAME should lack slashes. You can redefine this for customization. Flist-directory Display a list of files in or matching DIRNAME, a la `ls'. DIRNAME is globbed by the shell if necessary. Prefix arg (second arg if noninteractive) means supply -l switch to `ls'. Actions controlled by variables `list-directory-brief-switches' and `list-directory-verbose-switches'. Vinsert-directory-program Absolute or relative name of the `ls' program used by `insert-directory'. Finsert-directory Insert directory listing for FILE, formatted according to SWITCHES. Leaves point after the inserted text. SWITCHES may be a string of options, or a list of strings. Optional third arg WILDCARD means treat FILE as shell wildcard. Optional fourth arg FULL-DIRECTORY-P means file is a directory and switches do not contain `d', so that a full listing is expected. This works by running a directory listing program whose name is in the variable `insert-directory-program'. If WILDCARD, it also runs the shell specified by `shell-file-name'. Vkill-emacs-query-functions Functions to call with no arguments to query about killing XEmacs. If any of these functions returns nil, killing Emacs is cancelled. `save-buffers-kill-emacs' (\[save-buffers-kill-emacs]) calls these functions, but `kill-emacs', the low level primitive, does not. See also `kill-emacs-hook'. Fsave-buffers-kill-emacs Offer to save each buffer, then kill this XEmacs process. With prefix arg, silently save all file-visiting buffers, then kill. Fsymlink-expand-file-name If FILENAME is a symlink, return its non-symlink equivalent. Unlike `file-truename', this doesn't chase symlinks in directory components of the file or expand a relative pathname into an absolute one. Ffile-remote-p Test whether FILE-NAME is looked for on a remote system. Flibrary-all-completions Return all completions for FILE in any directory on SEARCH-PATH. If optional third argument FULL is non-nil, returned pathnames should be absolute rather than relative to some directory on the SEARCH-PATH. If optional fourth argument FAST is non-nil, don't sort the completions, or remove duplicates. Fprogn-with-message (progn-with-message MESSAGE FORMS ...) Display MESSAGE and evaluate FORMS, returning value of the last one. Vlib-complete:cache Used within read-library and read-library-internal to prevent costly repeated calls to library-all-completions. Format is a list of lists of the form ([<path> <subdir>] <cache-record> <cache-record> ...) where each <cache-record> has the form (<root> <modtimes> <completion-table>) Flib-complete:better-root Return non-nil if ROOT1 is a superset of ROOT2. Vlib-complete:max-cache-size *Maximum number of search paths which are cached. Fread-library-internal Don't call this. Fread-library Read library name, prompting with PROMPT and completing in directories from SEARCH-PATH. A nil in the search path represents the current directory. Completions for a given search-path are cached, with the cache being invalidated whenever one of the directories on the path changes. Default to DEFAULT if user enters a null string. Optional fourth arg MUST-MATCH non-nil means require existing file's name. Non-nil and non-t means also require confirmation after completion. Optional fifth argument FULL non-nil causes a full pathname, rather than a relative pathname, to be returned. Note that FULL implies MUST-MATCH. Optional sixth argument FILTER can be used to provide a function to filter the completions. This function is passed the filename, and should return a transformed filename (possibly a null transformation) or nil, indicating that the filename should not be included in the completions. Fget-library-path Front end to read-library Fload-library Load the library named LIBRARY. This is an interface to the function `load'. Ffind-library Find and edit the source for the library named LIBRARY. The extension of the LIBRARY must be omitted. Under XEmacs/Mule, the optional second argument specifies the coding system to use when decoding the file. Interactively, with a prefix argument, you will be prompted for the coding system. Ffind-library-other-window Load the library named LIBRARY in another window. Under XEmacs/Mule, the optional second argument specifies the coding system to use when decoding the file. Interactively, with a prefix argument, you will be prompted for the coding system. Ffind-library-other-frame Load the library named LIBRARY in a newly-created frame. Under XEmacs/Mule, the optional second argument specifies the coding system to use when decoding the file. Interactively, with a prefix argument, you will be prompted for the coding system. Vformat-alist List of information about understood file formats. Elements are of the form (NAME DOC-STR REGEXP FROM-FN TO-FN MODIFY MODE-FN). NAME is a symbol, which is stored in `buffer-file-format'. DOC-STR should be a single line providing more information about the format. It is currently unused, but in the future will be shown to the user if they ask for more information. REGEXP is a regular expression to match against the beginning of the file; it should match only files in that format. FROM-FN is called to decode files in that format; it gets two args, BEGIN and END, and can make any modifications it likes, returning the new end. It must make sure that the beginning of the file no longer matches REGEXP, or else it will get called again. Alternatively, FROM-FN can be a string, which specifies a shell command (including options) to be used as a filter to perform the conversion. TO-FN is called to encode a region into that format; it is passed three arguments: BEGIN, END, and BUFFER. BUFFER is the original buffer that the data being written came from, which the function could use, for example, to find the values of local variables. TO-FN should either return a list of annotations like `write-region-annotate-functions', or modify the region and return the new end. Alternatively, TO-FN can be a string, which specifies a shell command (including options) to be used as a filter to perform the conversion. MODIFY, if non-nil, means the TO-FN wants to modify the region. If nil, TO-FN will not make any changes but will instead return a list of annotations. MODE-FN, if specified, is called when visiting a file with that format. Fformat-encode-run-method Translate using function or shell script METHOD the text from FROM to TO. If METHOD is a string, it is a shell command; otherwise, it should be a Lisp function. BUFFER should be the buffer that the output originally came from. Fformat-decode-run-method Decode using function or shell script METHOD the text from FROM to TO. If METHOD is a string, it is a shell command; otherwise, it should be a Lisp function. Fformat-annotate-function Returns annotations for writing region as FORMAT. FORMAT is a symbol naming one of the formats defined in `format-alist', it must be a single symbol, not a list like `buffer-file-format'. FROM and TO delimit the region to be operated on in the current buffer. ORIG-BUF is the original buffer that the data came from. This function works like a function on `write-region-annotate-functions': it either returns a list of annotations, or returns with a different buffer current, which contains the modified text to write. For most purposes, consider using `format-encode-region' instead. Fformat-decode Decode text from any known FORMAT. FORMAT is a symbol appearing in `format-alist' or a list of such symbols, or nil, in which case this function tries to guess the format of the data by matching against the regular expressions in `format-alist'. After a match is found and the region decoded, the alist is searched again from the beginning for another match. Second arg LENGTH is the number of characters following point to operate on. If optional third arg VISIT-FLAG is true, set `buffer-file-format' to the list of formats used, and call any mode functions defined for those formats. Returns the new length of the decoded region. For most purposes, consider using `format-decode-region' instead. This function is called by insert-file-contents whenever a file is read. Fformat-decode-buffer Translate the buffer from some FORMAT. If the format is not specified, this function attempts to guess. `buffer-file-format' is set to the format used, and any mode-functions for the format are called. Fformat-decode-region Decode the region from some format. Arg FORMAT is optional; if omitted the format will be determined by looking for identifying regular expressions at the beginning of the region. Fformat-encode-buffer Translate the buffer into FORMAT. FORMAT defaults to `buffer-file-format'. It is a symbol naming one of the formats defined in `format-alist', or a list of such symbols. Fformat-encode-region Translate the region into some FORMAT. FORMAT defaults to `buffer-file-format', it is a symbol naming one of the formats defined in `format-alist', or a list of such symbols. Fformat-write-file Write current buffer into a FILE using some FORMAT. Makes buffer visit that file and sets the format as the default for future saves. If the buffer is already visiting a file, you can specify a directory name as FILE, to write a file of the same old name in that directory. Fformat-find-file Find the file FILE using data format FORMAT. If FORMAT is nil then do not do any format conversion. Fformat-insert-file Insert the contents of file FILE using data format FORMAT. If FORMAT is nil then do not do any format conversion. The optional third and fourth arguments BEG and END specify the part of the file to read. The return value is like the value of `insert-file-contents': a list (ABSOLUTE-FILE-NAME . SIZE). Fformat-read Read and return the name of a format. Return value is a list, like `buffer-file-format'; it may be nil. Formats are defined in `format-alist'. Optional arg is the PROMPT to use. Fformat-replace-strings Do multiple replacements on the buffer. ALIST is a list of (from . to) pairs, which should be proper arguments to `search-forward' and `replace-match' respectively. Optional 2nd arg REVERSE, if non-nil, means the pairs are (to . from), so that you can use the same list in both directions if it contains only literal strings. Optional args BEGIN and END specify a region of the buffer to operate on. Fformat-delq-cons Remove the given CONS from LIST by side effect, and return the new LIST. Since CONS could be the first element of LIST, write `(setq foo (format-delq-cons element foo))' to be sure of changing the value of `foo'. Fformat-make-relatively-unique Delete common elements of lists A and B, return as pair. Compares using `equal'. Fformat-common-tail Given two lists that have a common tail, return it. Compares with `equal', and returns the part of A that is equal to the equivalent part of B. If even the last items of the two are not equal, returns nil. Fformat-reorder Arrange ITEMS to following partial ORDER. Elements of ITEMS equal to elements of ORDER will be rearranged to follow the ORDER. Unmatched items will go last. Fformat-deannotate-region Translate annotations in the region into text properties. This sets text properties between FROM to TO as directed by the TRANSLATIONS and NEXT-FN arguments. NEXT-FN is a function that searches forward from point for an annotation. It should return a list of 4 elements: (BEGIN END NAME POSITIVE). BEGIN and END are buffer positions bounding the annotation, NAME is the name searched for in TRANSLATIONS, and POSITIVE should be non-nil if this annotation marks the beginning of a region with some property, or nil if it ends the region. NEXT-FN should return nil if there are no annotations after point. The basic format of the TRANSLATIONS argument is described in the documentation for the `format-annotate-region' function. There are some additional things to keep in mind for decoding, though: When an annotation is found, the TRANSLATIONS list is searched for a text-property name and value that corresponds to that annotation. If the text-property has several annotations associated with it, it will be used only if the other annotations are also in effect at that point. The first match found whose annotations are all present is used. The text property thus determined is set to the value over the region between the opening and closing annotations. However, if the text-property name has a non-nil `format-list-valued' property, then the value will be consed onto the surrounding value of the property, rather than replacing that value. There are some special symbols that can be used in the "property" slot of the TRANSLATIONS list: PARAMETER and FUNCTION (spelled in uppercase). Annotations listed under the pseudo-property PARAMETER are considered to be arguments of the immediately surrounding annotation; the text between the opening and closing parameter annotations is deleted from the buffer but saved as a string. The surrounding annotation should be listed under the pseudo-property FUNCTION. Instead of inserting a text-property for this annotation, the function listed in the VALUE slot is called to make whatever changes are appropriate. The function's first two arguments are the START and END locations, and the rest of the arguments are any PARAMETERs found in that region. Any annotations that are found by NEXT-FN but not defined by TRANSLATIONS are saved as values of the `unknown' text-property (which is list-valued). The TRANSLATIONS list should usually contain an entry of the form (unknown (nil format-annotate-value)) to write these unknown annotations back into the file. Fformat-subtract-regions Remove the regions in SUBTRAHEND from the regions in MINUEND. A region is a dotted pair (from . to). Both parameters are lists of regions. Each list must contain nonoverlapping, noncontiguous regions, in descending order. The result is also nonoverlapping, noncontiguous, and in descending order. The first element of MINUEND can have a cdr of nil, indicating that the end of that region is not yet known. Fformat-property-increment-region Increment property PROP over the region between FROM and TO by the amount DELTA (which may be negative). If property PROP is nil anywhere in the region, it is treated as though it were DEFAULT. Fformat-insert-annotations Apply list of annotations to buffer as `write-region' would. Inserts each element of the given LIST of buffer annotations at its appropriate place. Use second arg OFFSET if the annotations' locations are not relative to the beginning of the buffer: annotations will be inserted at their location-OFFSET+1 (ie, the offset is treated as the character number of the first character in the buffer). Fformat-annotate-value Return OLD and NEW as a (close . open) annotation pair. Useful as a default function for TRANSLATIONS alist when the value of the text property is the name of the annotation that you want to use, as it is for the `unknown' text property. Fformat-annotate-region Generate annotations for text properties in the region. Searches for changes between FROM and TO, and describes them with a list of annotations as defined by alist TRANSLATIONS and FORMAT-FN. IGNORE lists text properties not to consider; any text properties that are neither ignored nor listed in TRANSLATIONS are warned about. If you actually want to modify the region, give the return value of this function to `format-insert-annotations'. Format of the TRANSLATIONS argument: Each element is a list whose car is a PROPERTY, and the following elements are VALUES of that property followed by the names of zero or more ANNOTATIONS. Whenever the property takes on that value, the annotations (as formatted by FORMAT-FN) are inserted into the file. When the property stops having that value, the matching negated annotation will be inserted (it may actually be closed earlier and reopened, if necessary, to keep proper nesting). If the property's value is a list, then each element of the list is dealt with separately. If a VALUE is numeric, then it is assumed that there is a single annotation and each occurrence of it increments the value of the property by that number. Thus, given the entry (left-margin (4 "indent")), if the left margin changes from 4 to 12, two <indent> annotations will be generated. If the VALUE is nil, then instead of annotations, a function should be specified. This function is used as a default: it is called for all transitions not explicitly listed in the table. The function is called with two arguments, the OLD and NEW values of the property. It should return lists of annotations like `format-annotate-location' does. The same structure can be used in reverse for reading files. Fformat-annotate-location Return annotation(s) needed at LOCATION. This includes any properties that change between LOC-1 and LOC. If ALL is true, don't look at previous location, but generate annotations for all non-nil properties. Third argument IGNORE is a list of text-properties not to consider. Return value is a vector of 3 elements: 1. List of names of the annotations to close 2. List of the names of annotations to open. 3. List of properties that were ignored or couldn't be annotated. Fformat-annotate-single-property-change Return annotations for PROPERTY changing from OLD to NEW. These are searched for in the TRANSLATIONS alist. If NEW does not appear in the list, but there is a default function, then that function is called. Annotations to open and to close are returned as a dotted pair. Fformat-annotate-atomic-property-change Internal function annotate a single property change. PROP-ALIST is the relevant segment of a TRANSLATIONS list. OLD and NEW are the values. Vstandard-indent Default number of columns for margin-changing functions to indent. Vindent-line-function Function to indent current line. Findent-according-to-mode Indent line in proper way for current major mode. Findent-for-tab-command Indent line in proper way for current major mode. Findent-rigidly Indent all lines starting in the region sideways by ARG columns. Called from a program, takes three arguments, START, END and ARG. Findent-line-to Indent current line to COLUMN. This function removes or adds spaces and tabs at beginning of line only if necessary. It leaves point at end of indentation. Fcurrent-left-margin Return the left margin to use for this line. This is the value of the buffer-local variable `left-margin' plus the value of the `left-margin' text-property at the start of the line. Fmove-to-left-margin Move to the left margin of the current line. With optional argument, move forward N-1 lines first. The column moved to is the one given by the `current-left-margin' function. If the line's indentation appears to be wrong, and this command is called interactively or with optional argument FORCE, it will be fixed. Findent-to-left-margin Indent current line to the column given by `current-left-margin'. Fdelete-to-left-margin Remove left margin indentation from a region. This deletes to the column given by `current-left-margin'. In no case will it delete non-whitespace. Args FROM and TO are optional; default is the whole buffer. Fset-left-margin Set the left margin of the region to WIDTH. If `auto-fill-mode' is active, re-fill the region to fit the new margin. Fset-right-margin Set the right margin of the region to WIDTH. If `auto-fill-mode' is active, re-fill the region to fit the new margin. Falter-text-property Programmatically change value of a text-property. For each region between FROM and TO that has a single value for PROPERTY, apply FUNCTION to that value and sets the property to the function's result. Optional fifth argument OBJECT specifies the string or buffer to operate on. Fincrease-left-margin Increase or decrease the left-margin of the region. With no prefix argument, this adds `standard-indent' of indentation. A prefix arg (optional third arg INC noninteractively) specifies the amount to change the margin by, in characters. If `auto-fill-mode' is active, re-fill the region to fit the new margin. Fdecrease-left-margin Make the left margin of the region smaller. With no prefix argument, decrease the indentation by `standard-indent'. A prefix arg (optional third arg INC noninteractively) specifies the amount to change the margin by, in characters. If `auto-fill-mode' is active, re-fill the region to fit the new margin. Fincrease-right-margin Increase the right-margin of the region. With no prefix argument, increase the right margin by `standard-indent'. A prefix arg (optional third arg INC noninteractively) specifies the amount to change the margin by, in characters. A negative argument decreases the right margin width. If `auto-fill-mode' is active, re-fill the region to fit the new margin. Fdecrease-right-margin Make the right margin of the region smaller. With no prefix argument, decrease the right margin by `standard-indent'. A prefix arg (optional third arg INC noninteractively) specifies the amount of width to remove, in characters. A negative argument increases the right margin width. If `auto-fill-mode' is active, re-fills region to fit in new margin. Fbeginning-of-line-text Move to the beginning of the text on this line. With optional argument, move forward N-1 lines first. From the beginning of the line, moves past the left-margin indentation, the fill-prefix, and any indentation used for centering or right-justifying the line, but does not move past any whitespace that was explicitly inserted (such as a tab used to indent the first line of a paragraph). Vindent-region-function Short cut function to indent region using `indent-according-to-mode'. A value of nil means really run `indent-according-to-mode' on each line. Findent-region Indent each nonblank line in the region. With no argument, indent each line using `indent-according-to-mode', or use `indent-region-function' to do the whole region if that's non-nil. If there is a fill prefix, make each line start with the fill prefix. With argument COLUMN, indent each line to that column. Called from a program, takes three args: START, END and COLUMN. Findent-relative-maybe Indent a new line like previous nonblank line. Findent-relative Space out to under next indent point in previous nonblank line. An indent point is a non-whitespace character following whitespace. If the previous nonblank line has no indent points beyond the column point starts at, `tab-to-tab-stop' is done instead. Vtab-stop-list *List of tab stop positions used by `tab-to-tab-stops'. This should be a list of integers, ordered from smallest to largest. Vedit-tab-stops-map Keymap used in `edit-tab-stops'. Vedit-tab-stops-buffer Buffer whose tab stops are being edited--in case the variable `tab-stop-list' is local in that buffer. Fedit-tab-stops Edit the tab stops used by `tab-to-tab-stop'. Creates a buffer *Tab Stops* containing text describing the tab stops. A colon indicates a column where there is a tab stop. You can add or remove colons and then do \<edit-tab-stops-map>\[edit-tab-stops-note-changes] to make changes take effect. Fedit-tab-stops-note-changes Put edited tab stops into effect. Ftab-to-tab-stop Insert spaces or tabs to next defined tab-stop column. The variable `tab-stop-list' is a list of columns at which there are tab stops. Use \[edit-tab-stops] to edit them interactively. Fmove-to-tab-stop Move point to next defined tab-stop column. The variable `tab-stop-list' is a list of columns at which there are tab stops. Use \[edit-tab-stops] to edit them interactively. Vsearch-last-string Last string search for by a search command. This does not include direct calls to the primitive search functions, and does not include searches that are aborted. Vsearch-last-regexp Last string searched for by a regexp search command. This does not include direct calls to the primitive search functions, and does not include searches that are aborted. Vsearch-exit-option Non-nil means random control characters terminate incremental search. Vsearch-ring List of search string sequences. Vregexp-search-ring List of regular expression search string sequences. Vsearch-ring-yank-pointer The tail of the search ring whose car is the last thing searched for. Vregexp-search-ring-yank-pointer The tail of the regular expression search ring whose car is the last thing searched for. Visearch-mode-map Keymap for isearch-mode. Vminibuffer-local-isearch-map Keymap for editing isearch strings in the minibuffer. Visearch-mode-hook Function(s) to call after starting up an incremental search. Visearch-mode-end-hook Function(s) to call after terminating an incremental search. Fisearch-forward Do incremental search forward. With a prefix argument, do an incremental regular expression search instead. \<isearch-mode-map> As you type characters, they add to the search string and are found. The following non-printing keys are bound in `isearch-mode-map'. Type \[isearch-delete-char] to cancel characters from end of search string. Type \[isearch-exit] to exit, leaving point at location found. Type LFD (C-j) to match end of line. Type \[isearch-repeat-forward] to search again forward, \[isearch-repeat-backward] to search again backward. Type \[isearch-yank-word] to yank word from buffer onto end of search string and search for it. Type \[isearch-yank-line] to yank rest of line onto end of search string and search for it. Type \[isearch-quote-char] to quote control character to search for it. Type \[isearch-whitespace-chars] to match all whitespace chars in regexp. \[isearch-abort] while searching or when search has failed cancels input back to what has been found successfully. \[isearch-abort] when search is successful aborts and moves point to starting point. Also supported is a search ring of the previous 16 search strings. Type \[isearch-ring-advance] to search for the next item in the search ring. Type \[isearch-ring-retreat] to search for the previous item in the search ring. Type \[isearch-complete] to complete the search string using the search ring. The above keys are bound in the isearch-mode-map. To change the keys which are special to isearch-mode, simply change the bindings in that map. Other control and meta characters terminate the search and are then executed normally (depending on `search-exit-option'). If this function is called non-interactively, it does not return to the calling function until the search is done. The bindings, more precisely: \{isearch-mode-map} Fisearch-forward-regexp Do incremental search forward for regular expression. Like ordinary incremental search except that your input is treated as a regexp. See \[isearch-forward] for more info. Fisearch-backward Do incremental search backward. With a prefix argument, do an incremental regular expression search instead. See \[isearch-forward] for more information. Fisearch-backward-regexp Do incremental search backward for regular expression. Like ordinary incremental search except that your input is treated as a regexp. See \[isearch-forward] for more info. Fisearch-mode Start isearch minor mode. Called by isearch-forward, etc. Fisearch-exit Exit search normally. However, if this is the first command after starting incremental search and `search-nonincremental-instead' is non-nil, do an incremental search via `isearch-edit-string'. Fisearch-edit-string Edit the search string in the minibuffer. The following additional command keys are active while editing. \<minibuffer-local-isearch-map> \[exit-minibuffer] to exit editing and resume incremental searching. \[isearch-forward-exit-minibuffer] to resume isearching forward. \[isearch-backward-exit-minibuffer] to resume isearching backward. \[isearch-ring-advance-edit] to replace the search string with the next item in the search ring. \[isearch-ring-retreat-edit] to replace the search string with the next item in the search ring. \[isearch-complete-edit] to complete the search string from the search ring. Fisearch-abort Quit incremental search mode if searching is successful, signalling quit. Otherwise, revert to previous successful search and continue searching. Use `isearch-exit' to quit without signalling. Fisearch-repeat-forward Repeat incremental search forwards. Fisearch-repeat-backward Repeat incremental search backwards. Fisearch-toggle-regexp Toggle regexp searching on or off. Fisearch-toggle-case-fold Toggle case folding in searching on or off. Fisearch-delete-char Discard last input item and move point back. If no previous match was done, just beep. Fisearch-help-or-delete-char Show Isearch help or delete backward in the search string. Deletes when `delete-key-deletes-forward' is t and C-h is used for deleting backwards. Fisearch-yank-word Pull next word from buffer into search string. Fisearch-yank-line Pull rest of line from buffer into search string. Fisearch-yank-kill Pull rest of line from kill ring into search string. Fisearch-yank-sexp Pull next expression from buffer into search string. Fisearch-yank-x-selection Pull the current X selection into the search string. Fisearch-yank-x-clipboard Pull the current X clipboard selection into the search string. Fisearch-*-char Handle * and ? specially in regexps. Fisearch-|-char If in regexp search, jump to the barrier. Fisearch-quote-char Quote special characters for incremental search. Fisearch-return-char Convert return into newline for incremental search. Obsolete. Fisearch-printing-char Any other printing character => add it to the search string and search. Fisearch-whitespace-chars Match all whitespace chars, if in regexp mode. Fisearch-ring-advance Advance to the next search string in the ring. Fisearch-ring-retreat Retreat to the previous search string in the ring. Fisearch-ring-adjust-edit Use the next or previous search string in the ring while in minibuffer. Fisearch-ring-retreat-edit Retreat to the previous search string in the ring while in the minibuffer. Fisearch-complete Complete the search string from the strings on the search ring. The completed string is then editable in the minibuffer. If there is no completion possible, say so and continue searching. Fisearch-complete-edit Same as `isearch-complete' except in the minibuffer. Fisearch-no-upper-case-p Return t if there are no upper case chars in string. But upper case chars preceded by \ do not count since they have special meaning in a regexp. Fwith-caps-disable-folding Eval BODY with `case-fold-search' let to nil if STRING contains uppercase letters and `search-caps-disable-folding' is t. Fswitch-to-buffer Select buffer BUFNAME in the current window. BUFNAME may be a buffer or a buffer name. Optional second arg NORECORD non-nil means do not put this buffer at the front of the list of recently selected ones. WARNING: This is NOT the way to work on another buffer temporarily within a Lisp program! Use `set-buffer' instead. That avoids messing with the window-buffer correspondences. Fpop-to-buffer Select buffer BUFNAME in some window, preferably a different one. If BUFNAME is nil, then some other buffer is chosen. If `pop-up-windows' is non-nil, windows can be split to do this. If optional second arg NOT-THIS-WINDOW-P is non-nil, insist on finding another window even if BUFNAME is already visible in the selected window. If optional third arg is non-nil, it is the frame to pop to this buffer on. If `focus-follows-mouse' is non-nil, keyboard focus is left unchanged. VBuffer-menu-mode-map FBuffer-menu-mode Major mode for editing a list of buffers. Each line describes one of the buffers in Emacs. Letters do not insert themselves; instead, they are commands. \<Buffer-menu-mode-map> \[Buffer-menu-mouse-select] -- select buffer you click on, in place of the buffer menu. \[Buffer-menu-this-window] -- select current line's buffer in place of the buffer menu. \[Buffer-menu-other-window] -- select that buffer in another window, so the buffer menu buffer remains visible in its window. \[Buffer-menu-switch-other-window] -- make another window display that buffer. \[Buffer-menu-mark] -- mark current line's buffer to be displayed. \[Buffer-menu-select] -- select current line's buffer. Also show buffers marked with m, in other windows. \[Buffer-menu-1-window] -- select that buffer in full-frame window. \[Buffer-menu-2-window] -- select that buffer in one window, together with buffer selected before this one in another window. \[Buffer-menu-visit-tags-table] -- visit-tags-table this buffer. \[Buffer-menu-not-modified] -- clear modified-flag on that buffer. \[Buffer-menu-save] -- mark that buffer to be saved, and move down. \[Buffer-menu-delete] -- mark that buffer to be deleted, and move down. \[Buffer-menu-delete-backwards] -- mark that buffer to be deleted, and move up. \[Buffer-menu-execute] -- delete or save marked buffers. \[Buffer-menu-unmark] -- remove all kinds of marks from current line. With prefix argument, also move up one line. \[Buffer-menu-backup-unmark] -- back up a line and remove marks. \[Buffer-menu-toggle-read-only] -- toggle read-only status of buffer on this line. FBuffer-menu-buffer Return buffer described by this line of buffer menu. Fbuffer-menu Make a menu of buffers so you can save, delete or select them. With argument, show only buffers that are visiting files. Type ? after invocation to get help on commands available. Type q immediately to make the buffer menu go away. Fbuffer-menu-other-window Display a list of buffers in another window. With the buffer list buffer, you can save, delete or select the buffers. With argument, show only buffers that are visiting files. Type ? after invocation to get help on commands available. Type q immediately to make the buffer menu go away. FBuffer-menu-quit Quit the buffer menu. FBuffer-menu-mark Mark buffer on this line for being displayed by \<Buffer-menu-mode-map>\[Buffer-menu-select] command. FBuffer-menu-unmark Cancel all requested operations on buffer on this line and move down. Optional ARG means move up. FBuffer-menu-backup-unmark Move up and cancel all requested operations on buffer on line above. FBuffer-menu-delete Mark buffer on this line to be deleted by \<Buffer-menu-mode-map>\[Buffer-menu-execute] command. Prefix arg is how many buffers to delete. Negative arg means delete backwards. FBuffer-menu-delete-backwards Mark buffer on this line to be deleted by \<Buffer-menu-mode-map>\[Buffer-menu-execute] command and then move up one line. Prefix arg means move that many lines. FBuffer-menu-save Mark buffer on this line to be saved by \<Buffer-menu-mode-map>\[Buffer-menu-execute] command. FBuffer-menu-not-modified Mark buffer on this line as unmodified (no changes to save). FBuffer-menu-execute Save and/or delete buffers marked with \<Buffer-menu-mode-map>\[Buffer-menu-save] or \<Buffer-menu-mode-map>\[Buffer-menu-delete] commands. FBuffer-menu-select Select this line's buffer; also display buffers marked with `>'. You can mark buffers with the \<Buffer-menu-mode-map>\[Buffer-menu-mark] command. This command deletes and replaces all the previously existing windows in the selected frame. FBuffer-menu-visit-tags-table Visit the tags table in the buffer on this line. See `visit-tags-table'. FBuffer-menu-1-window Select this line's buffer, alone, in full frame. FBuffer-menu-mouse-select Select the buffer whose line you click on. FBuffer-menu-this-window Select this line's buffer in this window. FBuffer-menu-other-window Select this line's buffer in other window, leaving buffer menu visible. FBuffer-menu-switch-other-window Make the other window select this line's buffer. The current window remains selected. FBuffer-menu-2-window Select this line's buffer, with previous buffer in second window. FBuffer-menu-toggle-read-only Toggle read-only status of buffer on this line, perhaps via version control. Vlist-buffers-identification String used to identify this buffer, or a function of one argument to generate such a string. This variable is always buffer-local. Flist-buffers Display a list of names of existing buffers. The list is displayed in a buffer named `*Buffer List*'. Note that buffers with names starting with spaces are omitted. Non-null optional arg FILES-ONLY means mention only file buffers. The M column contains a * for buffers that are modified. The R column contains a % for buffers that are read-only. Flist-buffers-noselect Create and return a buffer with a list of names of existing buffers. The buffer is named `*Buffer List*'. Note that buffers with names starting with spaces are omitted. Non-null optional arg FILES-ONLY means mention only file buffers. The M column contains a * for buffers that are modified. The R column contains a % for buffers that are read-only. Fone-window-p Returns non-nil if the selected window is the only window (in its frame). Optional arg NOMINI non-nil means don't count the minibuffer even if it is active. The optional arg ALL-FRAMES t means count windows on all frames. If it is `visible', count windows on all visible frames. ALL-FRAMES nil or omitted means count only the selected frame, plus the minibuffer it uses (which may be on another frame). ALL-FRAMES = 0 means count windows on all visible and iconified frames. If ALL-FRAMES is any other value, count only the selected frame. If optional third argument DEVICE is nil or omitted, count frames on all devices. If a device, count frames only on that device. If a device type, count frames only on devices of that type. Otherwise, count frames only on the selected device. Fwalk-windows Cycle through all visible windows, calling PROC for each one. PROC is called with a window as argument. Optional second arg MINIBUF t means count the minibuffer window even if not active. MINIBUF nil or omitted means count the minibuffer iff it is active. MINIBUF neither t nor nil means not to count the minibuffer even if it is active. Several frames may share a single minibuffer; if the minibuffer counts, all windows on all frames that share that minibuffer count too. Therefore, when a separate minibuffer frame is active, `walk-windows' includes the windows in the frame from which you entered the minibuffer, as well as the minibuffer window. But if the minibuffer does not count, only windows from WINDOW's frame count. ALL-FRAMES is the optional third argument. ALL-FRAMES nil or omitted means cycle within the frames as specified above. ALL-FRAMES = `visible' means include windows on all visible frames. ALL-FRAMES = 0 means include windows on all visible and iconified frames. ALL-FRAMES = t means include windows on all frames including invisible frames. Anything else means restrict to WINDOW's frame. If optional fourth argument DEVICE is nil or omitted, include frames on all devices. If a device, include frames only on that device. If a device type, include frames only on devices of that type. Otherwise, include frames only on the selected device. Fminibuffer-window-active-p Return t if WINDOW (a minibuffer window) is now active. Fsave-selected-window Execute BODY, then select the window that was selected before BODY. Fcount-windows Returns the number of visible windows. Optional arg MINIBUF non-nil means count the minibuffer even if it is inactive. Fbalance-windows Makes all visible windows the same height (approximately). Fsplit-window-vertically Split current window into two windows, one above the other. The uppermost window gets ARG lines and the other gets the rest. Negative arg means select the size of the lowermost window instead. With no argument, split equally or close to it. Both windows display the same buffer now current. If the variable split-window-keep-point is non-nil, both new windows will get the same value of point as the current window. This is often more convenient for editing. Otherwise, we chose window starts so as to minimize the amount of redisplay; this is convenient on slow terminals. The new selected window is the one that the current value of point appears in. The value of point can change if the text around point is hidden by the new mode line. Programs should probably use split-window instead of this. Fsplit-window-horizontally Split current window into two windows side by side. This window becomes the leftmost of the two, and gets ARG columns. Negative arg means select the size of the rightmost window instead. No arg means split equally. Fenlarge-window-horizontally Make current window ARG columns wider. Fshrink-window-horizontally Make current window ARG columns narrower. Fshrink-window-if-larger-than-buffer Shrink the WINDOW to be as small as possible to display its contents. Do not shrink to less than `window-min-height' lines. Do nothing if the buffer contains more lines than the present window height, or if some of the window's contents are scrolled out of view, or if the window is not the full width of the frame, or if the window is the only window of its frame. Fkill-buffer-and-window Kill the current buffer and delete the selected window. Fwindow-list Return a list of existing windows. If the optional argument MINIBUF is non-nil, then include minibuffer windows in the result. By default, only the windows in the selected frame are returned. The optional argument ALL-FRAMES changes this behavior: ALL-FRAMES = `visible' means include windows on all visible frames. ALL-FRAMES = 0 means include windows on all visible and iconified frames. ALL-FRAMES = t means include windows on all frames including invisible frames. Anything else means restrict to the selected frame. The optional fourth argument DEVICE further clarifies which frames to search as specified by ALL-FRAMES. This value is only meaningful if ALL-FRAMES is non-nil. If nil or omitted, search only the selected device. If a device, search frames only on that device. If a device type, search frames only on devices of that type. Any other non-nil value means search frames on all devices. Fbackward-other-window Select the ARG'th different window on this frame, going backwards. This is just like calling `other-window' with the arg negated. Fwindows-of-buffer Returns a list of windows that have BUFFER in them. If BUFFER is not specified, the current buffer will be used. Fbuffer-in-multiple-windows-p Return t if BUFFER is in multiple windows. If BUFFER is not specified, the current buffer will be used. Fwindow-list Return a list of windows on FRAME, beginning with WINDOW. FRAME and WINDOW default to the selected ones. Optional second arg MINIBUF t means count the minibuffer window even if not active. If MINIBUF is neither t nor nil it means not to count the minibuffer even if it is active. Fset-window-buffer-dedicated Make WINDOW display BUFFER and be dedicated to that buffer. Then Emacs will not automatically change which buffer appears in WINDOW. If BUFFER is nil, make WINDOW not be dedicated (but don't change which buffer appears in it currently). Fpush-window-configuration Push the current window configuration onto the window-config stack. If CONFIG is specified, push it instead of the current window configuration. Each frame has its own window-config stack. Fpop-window-configuration Pop the top window configuration off the window-config stack and set it. Before setting the new window configuration, the current window configuration is pushed onto the "unpop" stack. `unpop-window-configuration' undoes what this function does. Each frame has its own window-config and "unpop" stack. Funpop-window-configuration Undo the effect of the most recent `pop-window-configuration'. This does exactly the inverse of what `pop-window-configuration' does: i.e. it pops a window configuration off of the "unpop" stack and pushes the current window configuration onto the window-config stack. Each frame has its own window-config and "unpop" stack. Vdisplay-buffer-function If non-nil, function to call to handle `display-buffer'. It will receive three args: the same as those to `display-buffer'. Vpre-display-buffer-function If non-nil, function that will be called from `display-buffer' as the first action. It will receive three args: the same as those to `display-buffer'. This function may be used to select an appropriate frame for the buffer, for example. See also the variable `display-buffer-function', which may be used to completely replace the `display-buffer' function. If the return value of this function is non-nil, it should be a frame, and that frame will be used to display the buffer. Vpop-up-frame-function Function to call to handle automatic new frame creation. It is called with no arguments and should return a newly created frame. A typical value might be `(lambda () (new-frame pop-up-frame-alist))' where `pop-up-frame-alist' would hold the default frame parameters. Vspecial-display-function Function to call to make a new frame for a special buffer. It is called with two arguments, the buffer and optional buffer specific data, and should return a window displaying that buffer. The default value makes a separate frame for the buffer, using `special-display-frame-alist' to specify the frame parameters. A buffer is special if its is listed in `special-display-buffer-names' or matches a regexp in `special-display-regexps'. Fdisplay-buffer Make BUFFER appear in some window on the current frame, but don't select it. BUFFER can be a buffer or a buffer name. If BUFFER is shown already in some window in the current frame, just uses that one, unless the window is the selected window and NOT-THIS-WINDOW-P is non-nil (interactively, with prefix arg). If BUFFER has a dedicated frame, display on that frame instead of the current frame, unless OVERRIDE-FRAME is non-nil. If OVERRIDE-FRAME is non-nil, display on that frame instead of the current frame (or the dedicated frame). If `pop-up-windows' is non-nil, always use the current frame and create a new window regardless of whether the buffer has a dedicated frame, and regardless of whether OVERRIDE-FRAME was specified. If `pop-up-frames' is non-nil, make a new frame if no window shows BUFFER. Returns the window displaying BUFFER. Fforward-sexp Move forward across one balanced expression (sexp). With argument, do it that many times. Negative arg -N means move backward across N balanced expressions. Fbackward-sexp Move backward across one balanced expression (sexp). With argument, do it that many times. Negative arg -N means move forward across N balanced expressions. Fmark-sexp Set mark ARG sexps from point. The place mark goes is the same place \[forward-sexp] would move to with the same argument. Repeat this command to mark more sexps in the same direction. Fforward-list Move forward across one balanced group of parentheses. With argument, do it that many times. Negative arg -N means move backward across N groups of parentheses. Fbackward-list Move backward across one balanced group of parentheses. With argument, do it that many times. Negative arg -N means move forward across N groups of parentheses. Fdown-list Move forward down one level of parentheses. With argument, do this that many times. A negative argument means move backward but still go down a level. In Lisp programs, an argument is required. Fbackward-up-list Move backward out of one level of parentheses. With argument, do this that many times. A negative argument means move forward but still to a less deep spot. In Lisp programs, an argument is required. Fup-list Move forward out of one level of parentheses. With argument, do this that many times. A negative argument means move backward but still to a less deep spot. In Lisp programs, an argument is required. Fkill-sexp Kill the sexp (balanced expression) following the cursor. With argument, kill that many sexps after the cursor. Negative arg -N means kill N sexps before the cursor. Fbackward-kill-sexp Kill the sexp (balanced expression) preceding the cursor. With argument, kill that many sexps before the cursor. Negative arg -N means kill N sexps after the cursor. Fbeginning-of-defun Move backward to the beginning of a defun. With argument, do it that many times. Negative arg -N means move forward to Nth following beginning of defun. Returns t unless search stops due to beginning or end of buffer. Normally a defun starts when there is an char with open-parenthesis syntax at the beginning of a line. If `defun-prompt-regexp' is non-nil, then a string which matches that regexp may precede the open-parenthesis, and point ends up at the beginning of the line. Fbeginning-of-defun-raw Move point to the character that starts a defun. This is identical to beginning-of-defun, except that point does not move to the beginning of the line when `defun-prompt-regexp' is non-nil. Fbuffer-end Return `point-max' of BUFFER if ARG is > 0; return `point-min' otherwise. BUFFER defaults to the current buffer if omitted. Fend-of-defun Move forward to next end of defun. With argument, do it that many times. Negative argument -N means move back to Nth preceding end of defun. An end of a defun occurs right after the close-parenthesis that matches the open-parenthesis that starts a defun; see `beginning-of-defun'. Fmark-defun Put mark at end of this defun, point at beginning. The defun marked is the one that contains point or follows point. Fnarrow-to-defun Make text outside current defun invisible. The defun visible is the one that contains point or follows point. Finsert-parentheses Enclose following ARG sexps in parentheses. Leave point after open-paren. A negative ARG encloses the preceding ARG sexps instead. No argument is equivalent to zero: just insert `()' and leave point between. If `parens-require-spaces' is non-nil, this command also inserts a space before and after, depending on the surrounding characters. Fmove-past-close-and-reindent Move past next `)', delete indentation before it, then indent after it. Flisp-complete-symbol Perform completion on Lisp symbol preceding point. Compare that symbol against the known Lisp symbols. The context determines which symbols are considered. If the symbol starts just after an open-parenthesis, only symbols with function definitions are considered. Otherwise, all symbols with function definitions, values or properties are considered. Fforward-page Move forward to page boundary. With arg, repeat, or go back if negative. A page boundary is any line whose beginning matches the regexp `page-delimiter'. Fbackward-page Move backward to page boundary. With arg, repeat, or go fwd if negative. A page boundary is any line whose beginning matches the regexp `page-delimiter'. Fmark-page Put mark at end of page, point at beginning. A numeric arg specifies to move forward or backward by that many pages, thus marking a page other than the one point was originally in. Fnarrow-to-page Make text outside current page invisible. A numeric arg specifies to move forward or backward by that many pages, thus showing a page other than the one point was originally in. Fcount-lines-page Report number of lines on current page, and how many are before or after point. Fwhat-page Print page and line number of point. Vregister-alist Alist of elements (NAME . CONTENTS), one for each Emacs register. NAME is a character (a number). CONTENTS is a string, number, frame configuration, mark or list. A list of strings represents a rectangle. A list of the form (file . NAME) represents the file named NAME. A list of the form (file-query NAME POSITION) represents position POSITION in the file named NAME, but query before visiting it. Fget-register Return contents of Emacs register named REG, or nil if none. Fset-register Set contents of Emacs register named REGISTER to VALUE. Returns VALUE. See the documentation of the variable `register-alist' for possible VALUE. Fpoint-to-register Store current location of point in register REGISTER. With prefix argument, store current frame configuration. Use \[jump-to-register] to go to that location or restore that configuration. Argument is a character, naming the register. Fwindow-configuration-to-register Store the window configuration of the selected frame in register REGISTER. Use \[jump-to-register] to restore the configuration. Argument is a character, naming the register. Fframe-configuration-to-register Store the window configuration of all frames in register REGISTER. Use \[jump-to-register] to restore the configuration. Argument is a character, naming the register. Fjump-to-register Move point to location stored in a register. If the register contains a file name, find that file. (To put a file name in a register, you must use `set-register'.) If the register contains a window configuration (one frame) or a frame configuration (all frames), restore that frame or all frames accordingly. First argument is a character, naming the register. Optional second arg non-nil (interactively, prefix argument) says to delete any existing frames that the frame configuration doesn't mention. (Otherwise, these frames are iconified.) Fview-register Display what is contained in register named REGISTER. The Lisp value REGISTER is a character. Finsert-register Insert contents of register REGISTER. (REGISTER is a character.) Normally puts point before and mark after the inserted text. If optional second arg is non-nil, puts mark before and point after. Interactively, second arg is non-nil if prefix arg is supplied. Fcopy-to-register Copy region into register REGISTER. With prefix arg, delete as well. Called from program, takes four args: REGISTER, START, END and DELETE-FLAG. START and END are buffer positions indicating what to copy. Fappend-to-register Append region to text in register REGISTER. With prefix arg, delete as well. Called from program, takes four args: REGISTER, START, END and DELETE-FLAG. START and END are buffer positions indicating what to append. Fprepend-to-register Prepend region to text in register REGISTER. With prefix arg, delete as well. Called from program, takes four args: REGISTER, START, END and DELETE-FLAG. START and END are buffer positions indicating what to prepend. Fcopy-rectangle-to-register Copy rectangular region into register REGISTER. With prefix arg, delete as well. Called from program, takes four args: REGISTER, START, END and DELETE-FLAG. START and END are buffer positions giving two corners of rectangle. Viso8859/1-case-table The case table for ISO-8859/1 characters. Vuse-hard-newlines Non-nil means to distinguish hard and soft newlines. When this is non-nil, the functions `newline' and `open-line' add the text-property `hard' to newlines that they insert. Also, a line is only considered as a candidate to match `paragraph-start' or `paragraph-separate' if it follows a hard newline. Newlines not marked hard are called "soft", and are always internal to paragraphs. The fill functions always insert soft newlines. Each buffer has its own value of this variable. Fuse-hard-newlines Minor mode to distinguish hard and soft newlines. When active, the functions `newline' and `open-line' add the text-property `hard' to newlines that they insert, and a line is only considered as a candidate to match `paragraph-start' or `paragraph-separate' if it follows a hard newline. Prefix argument says to turn mode on if positive, off if negative. When the mode is turned on, if there are newlines in the buffer but no hard newlines, ask the user whether to mark as hard any newlines preceeding a `paragraph-start' line. From a program, second arg INSERT specifies whether to do this; it can be `never' to change nothing, t or `always' to force marking, `guess' to try to do the right thing with no questions, nil or anything else to ask the user. Newlines not marked hard are called "soft", and are always internal to paragraphs. The fill functions insert and delete only soft newlines. Vparagraph-start *Regexp for beginning of a line that starts OR separates paragraphs. This regexp should match lines that separate paragraphs and should also match lines that start a paragraph (and are part of that paragraph). This is matched against the text at the left margin, which is not necessarily the beginning of the line, so it should never use "^" as an anchor. This ensures that the paragraph functions will work equally well within a region of text indented by a margin setting. The variable `paragraph-separate' specifies how to distinguish lines that start paragraphs from lines that separate them. If the variable `use-hard-newlines' is non-nil, then only lines following a hard newline are considered to match. Vparagraph-separate *Regexp for beginning of a line that separates paragraphs. If you change this, you may have to change paragraph-start also. This is matched against the text at the left margin, which is not necessarily the beginning of the line, so it should not use "^" as an anchor. This ensures that the paragraph functions will work equally within a region of text indented by a margin setting. Vsentence-end *Regexp describing the end of a sentence. All paragraph boundaries also end sentences, regardless. In order to be recognized as the end of a sentence, the ending period, question mark, or exclamation point must be followed by two spaces, unless it's inside some sort of quotes or parenthesis. Vpage-delimiter *Regexp describing line-beginnings that separate pages. Vparagraph-ignore-fill-prefix Non-nil means the paragraph commands are not affected by `fill-prefix'. This is desirable in modes where blank lines are the paragraph delimiters. Fforward-paragraph Move forward to end of paragraph. With arg N, do it N times; negative arg -N means move backward N paragraphs. A line which `paragraph-start' matches either separates paragraphs (if `paragraph-separate' matches it also) or is the first line of a paragraph. A paragraph end is the beginning of a line which is not part of the paragraph to which the end of the previous line belongs, or the end of the buffer. Fbackward-paragraph Move backward to start of paragraph. With arg N, do it N times; negative arg -N means move forward N paragraphs. A paragraph start is the beginning of a line which is a `first-line-of-paragraph' or which is ordinary text and follows a paragraph-separating line; except: if the first real line of a paragraph is preceded by a blank line, the paragraph starts at that blank line. See `forward-paragraph' for more information. Fmark-paragraph Put point at beginning of this paragraph, mark at end. The paragraph marked is the one that contains point or follows point. Fkill-paragraph Kill forward to end of paragraph. With arg N, kill forward to Nth end of paragraph; negative arg -N means kill backward to Nth start of paragraph. Fbackward-kill-paragraph Kill back to start of paragraph. With arg N, kill back to Nth start of paragraph; negative arg -N means kill forward to Nth end of paragraph. Ftranspose-paragraphs Interchange this (or next) paragraph with previous one. Fforward-sentence Move forward to next `sentence-end'. With argument, repeat. With negative argument, move backward repeatedly to `sentence-beginning'. The variable `sentence-end' is a regular expression that matches ends of sentences. Also, every paragraph boundary terminates sentences as well. Fbackward-sentence Move backward to start of sentence. With arg, do it arg times. See `forward-sentence' for more information. Fkill-sentence Kill from point to end of sentence. With arg, repeat; negative arg -N means kill back to Nth start of sentence. Fbackward-kill-sentence Kill back from point to start of sentence. With arg, repeat, or kill forward to Nth end of sentence if negative arg -N. Fmark-end-of-sentence Put mark at end of sentence. Arg works as in `forward-sentence'. Ftranspose-sentences Interchange this (next) and previous sentence. Feasy-menu-define Define a menu bar submenu in maps MAPS, according to MENU. The arguments SYMBOL and DOC are ignored; they are present for compatibility only. SYMBOL is not evaluated. In other Emacs versions these arguments may be used as a variable to hold the menu data, and a doc string for that variable. The first element of MENU must be a string. It is the menu bar item name. The rest of the elements are menu items. A menu item is usually a vector of three elements: [NAME CALLBACK ENABLE] NAME is a string--the menu item name. CALLBACK is a command to run when the item is chosen, or a list to evaluate when the item is chosen. ENABLE is an expression; the item is enabled for selection whenever this expression's value is non-nil. Alternatively, a menu item may have the form: [ NAME CALLBACK [ KEYWORD ARG ] ... ] Where KEYWORD is one of the symbol defined below. :keys KEYS KEYS is a string; a complex keyboard equivalent to this menu item. :active ENABLE ENABLE is an expression; the item is enabled for selection whenever this expression's value is non-nil. :suffix NAME NAME is a string; the name of an argument to CALLBACK. :style STYLE STYLE is a symbol describing the type of menu item. The following are defined: toggle: A checkbox. Currently just prepend the name with the string "Toggle ". radio: A radio button. nil: An ordinary menu item. :selected SELECTED SELECTED is an expression; the checkbox or radio button is selected whenever this expression's value is non-nil. Currently just disable radio buttons, no effect on checkboxes. A menu item can be a string. Then that string appears in the menu as unselectable text. A string consisting solely of hyphens is displayed as a solid horizontal line. A menu item can be a list. It is treated as a submenu. The first element should be the submenu name. That's used as the menu item in the top-level menu. The cdr of the submenu list is a list of menu items, as above. Feasy-menu-add Add MENU to the current menu bar. Feasy-menu-remove Remove MENU from the current menu bar. Vlisp-mode-syntax-table Vemacs-lisp-mode-syntax-table Vlisp-mode-abbrev-table Vshared-lisp-mode-map Keymap for commands shared by all sorts of Lisp modes. Vemacs-lisp-mode-map Keymap for Emacs Lisp mode. All commands in `shared-lisp-mode-map' are inherited by this map. Femacs-lisp-byte-compile Byte compile the file containing the current buffer. Femacs-lisp-byte-compile-and-load Byte-compile the current file (if it has changed), then load compiled code. Femacs-lisp-mode Major mode for editing Lisp code to run in Emacs. Commands: Delete converts tabs to spaces as it moves back. Blank lines separate paragraphs. Semicolons start comments. \{emacs-lisp-mode-map} Entry to this mode calls the value of `emacs-lisp-mode-hook' if that value is non-nil. Vlisp-mode-map Keymap for ordinary Lisp mode. All commands in `shared-lisp-mode-map' are inherited by this map. Flisp-mode Major mode for editing Lisp code for Lisps other than GNU Emacs Lisp. Commands: Delete converts tabs to spaces as it moves back. Blank lines separate paragraphs. Semicolons start comments. \{lisp-mode-map} Note that `run-lisp' may be used either to start an inferior Lisp job or to switch back to an existing one. Entry to this mode calls the value of `lisp-mode-hook' if that value is non-nil. Flisp-send-defun Send the current defun to the Lisp process made by \[run-lisp]. Vlisp-interaction-mode-map Keymap for Lisp Interaction mode. All commands in `shared-lisp-mode-map' are inherited by this map. Flisp-interaction-mode Major mode for typing and evaluating Lisp forms. Like Lisp mode except that \[eval-print-last-sexp] evals the Lisp expression before point, and prints its value into the buffer, advancing point. Commands: Delete converts tabs to spaces as it moves back. Paragraphs are separated only by blank lines. Semicolons start comments. \{lisp-interaction-mode-map} Entry to this mode calls the value of `lisp-interaction-mode-hook' if that value is non-nil. Feval-print-last-sexp Evaluate sexp before point; print value into current buffer. Feval-interactive Like `eval' except that it transforms defvars to defconsts. The evaluation of defcustom forms is forced. Feval-last-sexp Evaluate sexp before point; print value in minibuffer. With argument, print output into current buffer. Feval-defun Evaluate defun that point is in or before. Print value in minibuffer. With argument, insert value in current buffer after the defun. Flisp-indent-for-comment Indent this line's comment appropriately, or insert an empty comment. If adding a new comment on a blank line, use `block-comment-start' instead of `comment-start' to open the comment. Vlisp-indent-offset Vlisp-indent-function Flisp-indent-line Indent current line as Lisp code. With argument, indent any additional lines of the same expression rigidly along with this one. Fcalculate-lisp-indent Return appropriate indentation for current line as Lisp code. In usual case returns an integer: the column to indent to. Can instead return a list, whose car is the column to indent to. This means that following lines at the same level of indentation should not necessarily be indented the same way. The second element of the list is the buffer position of the start of the containing expression. Vlisp-body-indent Number of columns to indent the second line of a `(def...)' form. Findent-sexp Indent each line of the list starting just after point. If optional arg ENDPOS is given, indent each line, stopping when ENDPOS is encountered. Flisp-fill-paragraph Like \[fill-paragraph], but handle Emacs Lisp comments. If any of the current line is a comment, fill the comment or the paragraph of it that point is in, preserving the comment's indentation and initial semicolons. Findent-code-rigidly Indent all lines of code, starting in the region, sideways by ARG columns. Does not affect lines starting inside comments or strings, assuming that the start of the region is not inside them. Called from a program, takes args START, END, COLUMNS and NOCHANGE-REGEXP. The last is a regexp which, if matched at the beginning of a line, means don't indent that line. Vtext-mode-syntax-table Syntax table used while in text mode. Vtext-mode-abbrev-table Abbrev table used while in text mode. Vtext-mode-map Keymap for Text mode. Many other modes, such as Mail mode, Outline mode and Indented Text mode, inherit all the commands defined in this map. Ftext-mode Major mode for editing text intended for humans to read. Special commands: \{text-mode-map} Turning on Text mode calls the value of the variable `text-mode-hook', if that value is non-nil. Vindented-text-mode-map Keymap for Indented Text mode. All the commands defined in Text mode are inherited unless overridden. Findented-text-mode Major mode for editing text with indented paragraphs. In this mode, paragraphs are delimited only by blank lines. You can thus get the benefit of adaptive filling (see the variable `adaptive-fill-mode'). \{indented-text-mode-map} Turning on `indented-text-mode' calls the value of the variable `text-mode-hook', if that value is non-nil. Fcenter-paragraph Center each nonblank line in the paragraph at or after point. See `center-line' for more info. Fcenter-region Center each nonblank line starting in the region. See `center-line' for more info. Fcenter-line Center the line point is on, within the width specified by `fill-column'. This means adjusting the indentation so that it equals the distance between the end of the text and `fill-column'. The argument NLINES says how many lines to center. Vfill-individual-varying-indent *Controls criterion for a new paragraph in `fill-individual-paragraphs'. Non-nil means changing indent doesn't end a paragraph. That mode can handle paragraphs with extra indentation on the first line, but it requires separator lines between paragraphs. A value of nil means that any change in indentation starts a new paragraph. Vsentence-end-double-space *Non-nil means a single space does not end a sentence. This variable applies only to filling, not motion commands. To change the behavior of motion commands, see `sentence-end'. Vcolon-double-space *Non-nil means put two spaces after a colon when filling. Vfill-paragraph-function Mode-specific function to fill a paragraph, or nil if there is none. If the function returns nil, then `fill-paragraph' does its normal work. Fset-fill-prefix Set the fill prefix to the current line up to point. Filling expects lines to start with the fill prefix and reinserts the fill prefix in each resulting line. Vadaptive-fill-mode *Non-nil means determine a paragraph's fill prefix from its text. Vadaptive-fill-regexp *Regexp to match text at start of line that constitutes indentation. If Adaptive Fill mode is enabled, whatever text matches this pattern on the second line of a paragraph is used as the standard indentation for the paragraph. If the paragraph has just one line, the indentation is taken from that line. Vadaptive-fill-function *Function to call to choose a fill prefix for a paragraph. This function is used when `adaptive-fill-regexp' does not match. Fcurrent-fill-column Return the fill-column to use for this line. The fill-column to use for a buffer is stored in the variable `fill-column', but can be locally modified by the `right-margin' text property, which is subtracted from `fill-column'. The fill column to use for a line is the first column at which the column number equals or exceeds the local fill-column - right-margin difference. Fcanonically-space-region Remove extra spaces between words in region. Leave one space between words, two at end of sentences or after colons (depending on values of `sentence-end-double-space' and `colon-double-space'). Remove indentation from each line. Ffill-context-prefix Compute a fill prefix from the text between FROM and TO. This uses the variables `adaptive-fill-prefix' and `adaptive-fill-function'. If FIRST-LINE-REGEXP is non-nil, then when taking a prefix from the first line, insist it must match FIRST-LINE-REGEXP. Ffill-region-as-paragraph Fill the region as one paragraph. It removes any paragraph breaks in the region and extra newlines at the end, indents and fills lines between the margins given by the `current-left-margin' and `current-fill-column' functions. It leaves point at the beginning of the line following the paragraph. Normally performs justification according to the `current-justification' function, but with a prefix arg, does full justification instead. From a program, optional third arg JUSTIFY can specify any type of justification. Fourth arg NOSQUEEZE non-nil means not to make spaces between words canonical before filling. Fifth arg SQUEEZE-AFTER, if non-nil, means don't canonicalize spaces before that position. If `sentence-end-double-space' is non-nil, then period followed by one space does not end a sentence, so don't break a line there. Ffill-paragraph Fill paragraph at or after point. Prefix arg means justify as well. If `sentence-end-double-space' is non-nil, then period followed by one space does not end a sentence, so don't break a line there. If `fill-paragraph-function' is non-nil, we call it (passing our argument to it), and if it returns non-nil, we simply return its value. Ffill-region Fill each of the paragraphs in the region. Prefix arg (non-nil third arg, if called from program) means justify as well. Noninteractively, fourth arg NOSQUEEZE non-nil means to leave whitespace other than line breaks untouched, and fifth arg TO-EOP non-nil means to keep filling to the end of the paragraph (or next hard newline, if `use-hard-newlines' is on). If `sentence-end-double-space' is non-nil, then period followed by one space does not end a sentence, so don't break a line there. Ffill-paragraph-or-region Fill the current region, if it's active; otherwise, fill the paragraph. See `fill-paragraph' and `fill-region' for more information. Vdefault-justification *Method of justifying text not otherwise specified. Possible values are `left', `right', `full', `center', or `none'. The requested kind of justification is done whenever lines are filled. The `justification' text-property can locally override this variable. This variable automatically becomes buffer-local when set in any fashion. Fcurrent-justification How should we justify this line? This returns the value of the text-property `justification', or the variable `default-justification' if there is no text-property. However, it returns nil rather than `none' to mean "don't justify". Fset-justification Set the region's justification style. The kind of justification to use is prompted for. If the mark is not active, this command operates on the current paragraph. If the mark is active, the region is used. However, if the beginning and end of the region are not at paragraph breaks, they are moved to the beginning and end of the paragraphs they are in. If `use-hard-newlines' is true, all hard newlines are taken to be paragraph breaks. When calling from a program, operates just on region between BEGIN and END, unless optional fourth arg WHOLE-PAR is non-nil. In that case bounds are extended to include entire paragraphs as in the interactive command. Fset-justification-none Disable automatic filling for paragraphs in the region. If the mark is not active, this applies to the current paragraph. Fset-justification-left Make paragraphs in the region left-justified. This is usually the default, but see the variable `default-justification'. If the mark is not active, this applies to the current paragraph. Fset-justification-right Make paragraphs in the region right-justified: Flush at the right margin and ragged on the left. If the mark is not active, this applies to the current paragraph. Fset-justification-full Make paragraphs in the region fully justified: This makes lines flush on both margins by inserting spaces between words. If the mark is not active, this applies to the current paragraph. Fset-justification-center Make paragraphs in the region centered. If the mark is not active, this applies to the current paragraph. Ffind-space-insertable-point Search backward for a permissable point for inserting justification spaces Fjustify-current-line Do some kind of justification on this line. Normally does full justification: adds spaces to the line to make it end at the column given by `current-fill-column'. Optional first argument HOW specifies alternate type of justification: it can be `left', `right', `full', `center', or `none'. If HOW is t, will justify however the `current-justification' function says to. If HOW is nil or missing, full justification is done by default. Second arg EOP non-nil means that this is the last line of the paragraph, so it will not be stretched by full justification. Third arg NOSQUEEZE non-nil means to leave interior whitespace unchanged, otherwise it is made canonical. Funjustify-current-line Remove justification whitespace from current line. If the line is centered or right-justified, this function removes any indentation past the left margin. If the line is full-justified, it removes extra spaces between words. It does nothing in other justification modes. Funjustify-region Remove justification whitespace from region. For centered or right-justified regions, this function removes any indentation past the left margin from each line. For full-justified lines, it removes extra spaces between words. It does nothing in other justification modes. Arguments BEGIN and END are optional; default is the whole buffer. Ffill-nonuniform-paragraphs Fill paragraphs within the region, allowing varying indentation within each. This command divides the region into "paragraphs", only at paragraph-separator lines, then fills each paragraph using as the fill prefix the smallest indentation of any line in the paragraph. When calling from a program, pass range to fill as first two arguments. Optional third and fourth arguments JUSTIFY and MAIL-FLAG: JUSTIFY to justify paragraphs (prefix arg), MAIL-FLAG for a mail message, i. e. don't fill header lines. Ffill-individual-paragraphs Fill paragraphs of uniform indentation within the region. This command divides the region into "paragraphs", treating every change in indentation level as a paragraph boundary, then fills each paragraph using its indentation level as the fill prefix. When calling from a program, pass range to fill as first two arguments. Optional third and fourth arguments JUSTIFY and MAIL-FLAG: JUSTIFY to justify paragraphs (prefix arg), MAIL-FLAG for a mail message, i. e. don't fill header lines. Vpi The value of Pi (3.1415926...) Ve The value of e (2.7182818...) Vdegrees-to-radians Degrees to radian conversion constant Vradians-to-degrees Radian to degree conversion constant Fdegrees-to-radians Convert ARG from degrees to radians. Fradians-to-degrees Convert ARG from radians to degrees. Vitimer-version Version number of the itimer package. Vitimer-list List of all active itimers. Vitimer-process Process that drives all itimers, if a subprocess is being used. Vitimer-timer Emacs internal timer that drives the itimer system, if a subprocess is not being used to drive the system. Vitimer-timer-last-wakeup The time the timer driver function last ran. Vitimer-short-interval Interval used for scheduling an event a very short time in the future. Used internally to make the scheduler wake up early. Unit is seconds. Vitimer-next-wakeup Itimer process will wakeup to service running itimers within this many seconds. Vitimer-edit-map Keymap used when in Itimer Edit mode. Fcheck-itimer If VAR is not bound to an itimer, signal wrong-type-argument. This is a macro. Fcheck-itimer-coerce-string If VAR is not bound to a string, look up the itimer that it names and bind VAR to it. Otherwise if VAR is not bound to an itimer, signal wrong-type-argument. This is a macro. Fcheck-nonnegative-number If VAR is not bound to a number, signal wrong-type-argument. If VAR is not bound to a positive number, signal args-out-of-range. This is a macro. Fcheck-string If VAR is not bound to a string, signal wrong-type-argument. This is a macro. Fitimerp Returns non-nil iff OBJ is an itimer. Fitimer-live-p Returns non-nil iff OBJ is an itimer and is active. ``Active'' means Emacs will run it when it expires. `activate-timer' must be called on a itimer to make it active. Itimers started with `start-itimer' are automatically active. Fitimer-name Returns the name of ITIMER. Fitimer-value Returns the number of seconds until ITIMER expires. Fitimer-restart Returns the value to which ITIMER will be set at restart. nil is returned if this itimer doesn't restart. Fitimer-function Returns the function of ITIMER. This function is called each time ITIMER expires. Fitimer-is-idle Returns non-nil if ITIMER is an idle timer. Normal timers expire after a set interval. Idle timers expire only after Emacs has been idle for a specific interval. ``Idle'' means no command events within the interval. Fitimer-uses-arguments Returns non-nil if the function of ITIMER will be called with arguments. ITIMER's function is called with the arguments each time ITIMER expires. The arguments themselves are retrievable with `itimer-function-arguments'. Fitimer-function-arguments Returns the function arguments of ITIMER as a list. ITIMER's function is called with these argument each timer ITIMER expires. Fset-itimer-value Set the timeout value of ITIMER to be VALUE. Itimer will expire is this many seconds. If your version of Emacs supports floating point numbers then VALUE can be a floating point number. Otherwise it must be an integer. Returns VALUE. Fset-itimer-restart Set the restart value of ITIMER to be RESTART. If RESTART is nil, ITIMER will not restart when it expires. If your version of Emacs supports floating point numbers then RESTART can be a floating point number. Otherwise it must be an integer. Returns RESTART. Fset-itimer-function Set the function of ITIMER to be FUNCTION. FUNCTION will be called when itimer expires. Returns FUNCTION. Fset-itimer-is-idle Sets flag that says whether ITIMER is an idle timer. If FLAG is non-nil, then ITIMER will eb considered an idle timer. Returns FLAG. Fset-itimer-uses-arguments Sets flag that says whether the function of ITIMER is called with arguments. If FLAG is non-nil, then the function will be called with one argument, otherwise the function will be called with no arguments. Returns FLAG. Fset-itimer-function-arguments Set the function arguments of ITIMER to be ARGUMENTS. The function of ITIMER will be called with ARGUMENTS when itimer expires. Returns ARGUMENTS. Fget-itimer Return itimer named NAME, or nil if there is none. Fread-itimer Read the name of an itimer from the minibuffer and return the itimer associated with that name. The user is prompted with PROMPT. Optional second arg INITIAL-INPUT non-nil is inserted into the minibuffer as initial user input. Fdelete-itimer Deletes ITIMER. ITIMER may be an itimer or the name of one. Fstart-itimer Start an itimer. Arguments are NAME, FUNCTION, VALUE &optional RESTART, IS-IDLE, WITH-ARGS, &rest FUNCTION-ARGUMENTS. NAME is an identifier for the itimer. It must be a string. If an itimer already exists with this name, NAME will be modified slightly to until it is unique. FUNCTION should be a function (or symbol naming one). It will be called each time the itimer expires with arguments of FUNCTION-ARGUMENTS. The function can access the itimer that invoked it through the variable `current-itimer'. If WITH-ARGS is nil then FUNCTION is called with no arguments. This is for backward compatibility with older versions of the itimer package which always called FUNCTION with no arguments. VALUE is the number of seconds until this itimer expires. If your version of Emacs supports floating point numbers then you can VALUE can be a floating point number. Otherwise it must be an integer. Optional fourth arg RESTART non-nil means that this itimer should be restarted automatically after its function is called. Normally an itimer is deleted at expiration after its function has returned. If non-nil RESTART should be a number indicating the value at which the itimer should be set at restart time. Optional fifth arg IS-IDLE specified if this is an idle timer. Normal timers eexpire after a set interval. Idle timers expire only after Emacs has been idle for specific interval. ``Idle'' means no command events within the interval. Returns the newly created itimer. Fmake-itimer Create an unactivated itimer. The itimer will not begin running until activated with `activate-itimer'. Set the itimer's expire interval with `set-itimer-value'. Set the itimer's function interval with `set-itimer-function'. Once this is done, the timer can be activated. Factivate-itimer Activate ITIMER, which was previously created with `make-itimer'. ITIMER will be added to the global list of running itimers, its FUNCTION will be called when it expires, and so on. Flist-itimers Pop up a buffer containing a list of all itimers. The major mode of the buffer is Itimer Edit mode. This major mode provides commands to manipulate itimers; see the documentation for `itimer-edit-mode' for more information. Fedit-itimers Display a list of all itimers and select it for editing. The major mode of the buffer containing the listing is Itimer Edit mode. This major mode provides commands to manipulate itimers; see the documentation for `itimer-edit-mode' for more information. Fitimer-edit-mode Major mode for manipulating itimers. Attributes of running itimers are changed by moving the cursor to the desired field and typing `s' to set that field. The field will then be set to the value read from the minibuffer. Commands: TAB move forward a field DEL move backward a field s set a field d delete the selected itimer x start a new itimer ? help Fitimer-edit-help Help function for Itimer Edit. Fitimer-edit-quit End Itimer Edit. Vauto-save-timeout *Number of seconds idle time before auto-save. Zero or nil means disable auto-saving due to idleness. The actual amount of idle time between auto-saves is logarithmically related to the size of the current buffer. This variable is the number of seconds after which an auto-save will happen when the current buffer is 50k or less; the timeout will be 2 1/4 times this in a 200k buffer, 3 3/4 times this in a 1000k buffer, and 4 1/2 times this in a 2000k buffer. See also the variable `auto-save-interval', which controls auto-saving based on the number of characters typed. Vauto-gc-threshold *GC when this many bytes have been consed since the last GC, and the user has been idle for `auto-save-timeout' seconds. Fauto-save-itimer For use as a itimer callback function. Auto-saves and garbage-collects based on the size of the current buffer and the value of `auto-save-timeout', `auto-gc-threshold', and the current keyboard idle-time. Vtoolbar-help-enabled If non-nil help is echoed for toolbar buttons. Vtoolbar-icon-directory Location of standard toolbar icon bitmaps. Ftoolbar-make-button-list Calls make-glyph on each arg and returns a list of the results. Vtoolbar-map Keymap consulted for mouse-clicks over a toolbar. Fpress-toolbar-button Press a toolbar button. This only changes its appearance. Call function stored in `toolbar-blank-press-function,' if any, with EVENT as an argument if press is over a blank area of the toolbar. Frelease-and-activate-toolbar-button Release a toolbar button and activate its callback. Call function stored in `toolbar-blank-release-function,' if any, with EVENT as an argument if release is over a blank area of the toolbar. Frelease-toolbar-button Release all pressed toolbar buttons. Fscrollbar-char-left Function called when the char-left arrow on the scrollbar is clicked. This is the little arrow to the left of the scrollbar. One argument is passed, the scrollbar's window. You can advise this function to change the scrollbar behavior. Fscrollbar-char-right Function called when the char-right arrow on the scrollbar is clicked. This is the little arrow to the right of the scrollbar. One argument is passed, the scrollbar's window. You can advise this function to change the scrollbar behavior. Fscrollbar-page-left Function called when the user gives the "page-left" scrollbar action. (The way this is done can vary from scrollbar to scrollbar.) One argument is passed, the scrollbar's window. You can advise this function to change the scrollbar behavior. Fscrollbar-page-right Function called when the user gives the "page-right" scrollbar action. (The way this is done can vary from scrollbar to scrollbar.) One argument is passed, the scrollbar's window. You can advise this function to change the scrollbar behavior. Fscrollbar-to-left Function called when the user gives the "to-left" scrollbar action. (The way this is done can vary from scrollbar to scrollbar.). One argument is passed, the scrollbar's window. You can advise this function to change the scrollbar behavior. Fscrollbar-to-right Function called when the user gives the "to-right" scrollbar action. (The way this is done can vary from scrollbar to scrollbar.). One argument is passed, the scrollbar's window. You can advise this function to change the scrollbar behavior. Fscrollbar-horizontal-drag Function called when the user drags the horizontal scrollbar thumb. One argument is passed, a cons containing the scrollbar's window and a value representing how many columns the thumb is slid over. You can advise this function to change the scrollbar behavior. Fkill-this-buffer Kill the current buffer. Fset-menubar-dirty-flag Tell XEmacs that the menubar has to be updated. NOTE: XEmacs now recognizes when you set a different value for `current-menubar'. You *only* need to call this function if you destructively modify a part of the menubar and don't set `current-menubar'. Note that all the functions that modify a menu call this automatically. Fset-menubar Set the default menubar to be MENUBAR. See `current-menubar' for a description of the syntax of a menubar. Fset-buffer-menubar Set the buffer-local menubar to be MENUBAR. See `current-menubar' for a description of the syntax of a menubar. Ffind-menu-item Search MENUBAR for item given by ITEM-PATH-LIST starting from PARENT. Returns (ITEM . PARENT), where PARENT is the immediate parent of the item found. If the item does not exist, the car of the returned value is nil. If some menu in the ITEM-PATH-LIST does not exist, an error is signalled. Fadd-menu-button Add a menu item to some menu, creating the menu first if necessary. If the named item exists already, it is changed. MENU-PATH identifies the menu under which the new menu item should be inserted. It is a list of strings; for example, ("File") names the top-level "File" menu. ("File" "Foo") names a hypothetical submenu of "File". MENU-LEAF is a menubar leaf node. See the documentation of `current-menubar'. BEFORE, if provided, is the name of a menu item before which this item should be added, if this item is not on the menu already. If the item is already present, it will not be moved. Fadd-submenu Add a menu to the menubar or one of its submenus. If the named menu exists already, it is changed. MENU-PATH identifies the menu under which the new menu should be inserted. It is a list of strings; for example, ("File") names the top-level "File" menu. ("File" "Foo") names a hypothetical submenu of "File". If MENU-PATH is nil, then the menu will be added to the menubar itself. SUBMENU is the new menu to add. See the documentation of `current-menubar' for the syntax. BEFORE, if provided, is the name of a menu before which this menu should be added, if this menu is not on its parent already. If the menu is already present, it will not be moved. Fdelete-menu-item Remove the named menu item from the menu hierarchy. PATH is a list of strings which identify the position of the menu item in the menu hierarchy. The documentation of `add-submenu' describes menu-paths. Frelabel-menu-item Change the string of the specified menu item. PATH is a list of strings which identify the position of the menu item in the menu hierarchy. ("File" "Save") means the menu item called "Save" under the toplevel "File" menu. ("Menu" "Foo" "Item") means the menu item called "Item" under the "Foo" submenu of "Menu". NEW-NAME is the string that the menu item will be printed as from now on. Fenable-menu-item Make the named menu item be selectable. PATH is a list of strings which identify the position of the menu item in the menu hierarchy. ("File" "Save") means the menu item called "Save" under the toplevel "File" menu. ("Menu" "Foo" "Item") means the menu item called "Item" under the "Foo" submenu of "Menu". Fdisable-menu-item Make the named menu item be unselectable. PATH is a list of strings which identify the position of the menu item in the menu hierarchy. ("File" "Save") means the menu item called "Save" under the toplevel "File" menu. ("Menu" "Foo" "Item") means the menu item called "Item" under the "Foo" submenu of "Menu". Fselect-toggle-menu-item Make the named toggle- or radio-style menu item be in the `selected' state. PATH is a list of strings which identify the position of the menu item in the menu hierarchy. ("File" "Save") means the menu item called "Save" under the toplevel "File" menu. ("Menu" "Foo" "Item") means the menu item called "Item" under the "Foo" submenu of "Menu". Fdeselect-toggle-menu-item Make the named toggle- or radio-style menu item be in the `unselected' state. PATH is a list of strings which identify the position of the menu item in the menu hierarchy. ("File" "Save") means the menu item called "Save" under the toplevel "File" menu. ("Menu" "Foo" "Item") means the menu item called "Item" under the "Foo" submenu of "Menu". Fget-popup-menu-response Pop up the given menu and wait for a response. This blocks until the response is received, and returns the misc-user event that encapsulates the response. To execute it, you can do (funcall (event-function response) (event-object response)) If no response was received, nil is returned. MENU-DESC and EVENT are as in the call to `popup-menu'. Fpopup-menu-and-execute-in-window Pop up the given menu and execute its response in EVENT's window. This blocks until the response is received, temporarily selects EVENT's window, and executes the command specified in the response. EVENT can also be a window. See `popup-menu' for the semantics of MENU-DESC. Fyes-or-no-p-dialog-box Ask user a "y or n" question with a popup dialog box. Returns t if answer is "yes". Takes one argument, which is the string to display to ask the question. Fyes-or-no-p-maybe-dialog-box Ask user a yes-or-no question. Return t if answer is yes. The question is asked with a dialog box or the minibuffer, as appropriate. Takes one argument, which is the string to display to ask the question. It should end in a space; `yes-or-no-p' adds `(yes or no) ' to it. The user must confirm the answer with RET, and can edit it until it as been confirmed. Fy-or-n-p-maybe-dialog-box Ask user a "y or n" question. Return t if answer is "y". Takes one argument, which is the string to display to ask the question. The question is asked with a dialog box or the minibuffer, as appropriate. It should end in a space; `y-or-n-p' adds `(y or n) ' to it. No confirmation of the answer is requested; a single character is enough. Also accepts Space to mean yes, or Delete to mean no. Fget-dialog-box-response Pop up a dialog box and return user's selection. POSITION specifies which frame to use. This is normally an event or a window or frame. If POSITION is t or nil, it means to use the frame the mouse is on. The dialog box appears in the middle of the specified frame. CONTENTS specifies the alternatives to display in the dialog box. It is a list of the form (TITLE ITEM1 ITEM2...). Each ITEM is a cons cell (STRING . VALUE). The return value is VALUE from the chosen item. An ITEM may also be just a string--that makes a nonselectable item. An ITEM may also be nil--that means to put all preceding items on the left of the dialog box and all following items on the right. Fmessage-box Display a message, in a dialog box if possible. If the selected device has no dialog-box support, use the echo area. The arguments are the same as to `format'. If the only argument is nil, clear any existing message; let the minibuffer contents show. Fmessage-or-box Display a message in a dialog box or in the echo area. If this command was invoked with the mouse, use a dialog box. Otherwise, use the echo area. The arguments are the same as to `format'. If the only argument is nil, clear any existing message; let the minibuffer contents show. Fcompose-region Compose characters in the current region into one composite character. From a Lisp program, pass two arguments, START to END. The composite character replaces the composed characters. BUFFER defaults to the current buffer if omitted. Fdecompose-region Decompose any composite characters in the current region. From a Lisp program, pass two arguments, START to END. This converts each composite character into one or more characters, the individual characters out of which the composite character was formed. Non-composite characters are left as-is. BUFFER defaults to the current buffer if omitted. Fcharsets-in-region Return a list of the charsets in the region between START and END. BUFFER defaults to the current buffer if omitted. Fcharsets-in-string Return a list of the charsets in STRING. Fcharset-graphic Return the `graphic' property of CHARSET. See `make-charset'. Fcharset-final Return the final byte of the ISO 2022 escape sequence designating CHARSET. Fcharset-chars Return the number of characters per dimension of CHARSET. Fcharset-columns Return the number of display columns per character of CHARSET. This only applies to TTY mode (under X, the actual display width can be automatically determined). Fcharset-direction Return the display direction (`l2r' or `r2l') of CHARSET. Fcharset-registry Return the registry of CHARSET. This is a regular expression matching the registry field of fonts that can display the characters in CHARSET. Fcharset-ccl-program Return the CCL program of CHARSET. See `make-charset'. Fmodify-coding-system-alist Modify one of look up tables for finding a coding system on I/O operation. There are three of such tables, `file-coding-system-alist', `process-coding-system-alist', and `network-coding-system-alist'. TARGET-TYPE specifies which of them to modify. If it is `file', it affects `file-coding-system-alist' (which see). If it is `process', it affects `process-coding-system-alist' (which see). If it is `network', it affects `network-codign-system-alist' (which see). REGEXP is a regular expression matching a target of I/O operation. The target is a file name if TARGET-TYPE is `file', a program name if TARGET-TYPE is `process', or a network service name or a port number to connect to if TARGET-TYPE is `network'. CODING-SYSTEM is a coding system to perform code conversion on the I/O operation, or a cons cell (DECODING . ENCODING) specifying the coding systems for decoding and encoding respectively, or a function symbol which, when called, returns such a cons cell. Fkeyboard-coding-system Return coding-system of what is sent from terminal keyboard. Fset-keyboard-coding-system Set the coding system used for TTY keyboard input. Currently broken. Fterminal-coding-system Return coding-system of your terminal. Fset-terminal-coding-system Set the coding system used for TTY display output. Currently broken. Fset-pathname-coding-system Set the coding system used for file system path names. Fwhat-coding-system Show the encoding of text in the region. This function is meant to be called interactively; from a Lisp program, use `detect-coding-region' instead. Fdecode-coding-string Decode the string STR which is encoded in CODING-SYSTEM. Does not modify STR. Returns the decoded string on successful conversion. Fencode-coding-string Encode the string STR using CODING-SYSTEM. Does not modify STR. Returns the encoded string on successful conversion. Fcoding-system-mnemonic Return the 'mnemonic property of CODING-SYSTEM. Fcoding-system-eol-type Return the 'eol-type property of CODING-SYSTEM. Fcoding-system-eol-lf Return the 'eol-lf property of CODING-SYSTEM. Fcoding-system-eol-crlf Return the 'eol-crlf property of CODING-SYSTEM. Fcoding-system-eol-cr Return the 'eol-cr property of CODING-SYSTEM. Fcoding-system-post-read-conversion Return the 'post-read-conversion property of CODING-SYSTEM. Fcoding-system-pre-write-conversion Return the 'pre-write-conversion property of CODING-SYSTEM. Fcoding-system-force-on-output Return the 'force-on-output property of CODING-SYSTEM for the specified REGISTER. Fcoding-system-short Return the 'short property of CODING-SYSTEM. Fcoding-system-no-ascii-eol Return the 'no-ascii-eol property of CODING-SYSTEM. Fcoding-system-no-ascii-cntl Return the 'no-ascii-cntl property of CODING-SYSTEM. Fcoding-system-seven Return the 'seven property of CODING-SYSTEM. Fcoding-system-lock-shift Return the 'lock-shift property of CODING-SYSTEM. Fcoding-system-no-iso6429 Return the 'no-iso6429 property of CODING-SYSTEM. Fcoding-system-ccl-encode Return the CCL 'encode property of CODING-SYSTEM. Fcoding-system-ccl-decode Return the CCL 'decode property of CODING-SYSTEM. Vbuffer-file-coding-system-for-read Coding system used when reading a file. This provides coarse-grained control; for finer-grained control, use `file-coding-system-alist'. From a Lisp program, if you wish to unilaterally specify the coding system used for one particular operation, you should bind the variable `coding-system-for-read' rather than setting this variable, which is intended to be used for global environment specification. Vfile-coding-system-alist Alist to decide a coding system to use for a file I/O operation. The format is ((PATTERN . VAL) ...), where PATTERN is a regular expression matching a file name, VAL is a coding system, a cons of coding systems, or a function symbol. If VAL is a coding system, it is used for both decoding and encoding the file contents. If VAL is a cons of coding systems, the car part is used for decoding, and the cdr part is used for encoding. If VAL is a function symbol, the function must return a coding system or a cons of coding systems which are used as above. This overrides the more general specification in `buffer-file-coding-system-for-read', but is overridden by `coding-system-for-read'. Fset-buffer-file-coding-system Set buffer-file-coding-system of the current buffer to CODING-SYSTEM. If optional argument FORCE (interactively, the prefix argument) is not given, attempt to match the EOL type of the new coding system to the current value of `buffer-file-coding-system'. Fset-buffer-file-coding-system-for-read Set the coding system used when reading in a file. This is equivalent to setting the variable `buffer-file-coding-system-for-read'. You can also use `file-coding-system-alist' to specify the coding system for particular files. Fset-default-buffer-file-coding-system Set the default value of `buffer-file-coding-system' to CODING-SYSTEM. The default value is used both for buffers without associated files and for files with no apparent coding system (i.e. primarily ASCII). See `buffer-file-coding-system' for more information. Ffind-file-coding-system-for-read-from-filename Look up coding system to read a file in `file-coding-system-alist'. The return value will be nil (no applicable entry) or a coding system object (the entry specified a coding system). Ffind-file-coding-system-for-write-from-filename Look up coding system to write a file in `file-coding-system-alist'. The return value will be nil (no applicable entry) or a coding system object (the entry specified a coding system). Fconvert-mbox-coding-system Decoding function for Unix mailboxes. Does separate detection and decoding on each message, since each message might be in a different encoding. Ffind-coding-system-magic-cookie Look for the coding-system magic cookie in the current buffer. Fload Execute a file of Lisp code named FILE. First tries FILE with .elc appended, then tries with .el, then tries FILE unmodified. Searches directories in load-path. If optional second arg NOERROR is non-nil, report no error if FILE doesn't exist. Print messages at start and end of loading unless optional third arg NOMESSAGE is non-nil. If optional fourth arg NOSUFFIX is non-nil, don't try adding suffixes .elc or .el to the specified name FILE. Return t if file exists. Vinsert-file-contents-access-hook A hook to make a file accessible before reading it. `insert-file-contents' calls this hook before doing anything else. Called with two arguments: FILENAME and VISIT, the same as the corresponding arguments in the call to `insert-file-contents'. Vinsert-file-contents-pre-hook A special hook to decide the coding system used for reading in a file. Before reading a file, `insert-file-contents' calls the functions on this hook with arguments FILENAME and VISIT, the same as the corresponding arguments in the call to `insert-file-contents'. In these functions, you may refer to the global variable `buffer-file-coding-system-for-read'. The return value of the functions should be either -- nil -- A coding system or a symbol denoting it, indicating the coding system to be used for reading the file -- A list of two elements (absolute pathname and length of data inserted), which is used as the return value to `insert-file-contents'. In this case, `insert-file-contents' assumes that the function has inserted the file for itself and suppresses further reading. If any function returns non-nil, the remaining functions are not called. Vinsert-file-contents-error-hook A hook to set `buffer-file-coding-system' when a read error has occurred. When a file error (e.g. nonexistent file) occurs while read a file, `insert-file-contents' calls the functions on this hook with three arguments: FILENAME and VISIT (the same as the corresponding arguments in the call to `insert-file-contents') and a cons (SIGNALED-CONDITIONS . SIGNAL-DATA). After calling this hook, the error is signalled for real and propagates to the caller of `insert-file-contents'. Vinsert-file-contents-post-hook A hook to set `buffer-file-coding-system' for the current buffer. After successful reading, `insert-file-contents' calls the functions on this hook with four arguments: FILENAME and VISIT (the same as the corresponding arguments in the call to `insert-file-contents'), CODING-SYSTEM (the actual coding system used to decode the file), and a cons of absolute pathname and length of data inserted (the same thing as will be returned from `insert-file-contents'). Finsert-file-contents Insert contents of file FILENAME after point. Returns list of absolute file name and length of data inserted. If second argument VISIT is non-nil, the buffer's visited filename and last save file modtime are set, and it is marked unmodified. If visiting and the file does not exist, visiting is completed before the error is signaled. The optional third and fourth arguments BEG and END specify what portion of the file to insert. If VISIT is non-nil, BEG and END must be nil. If optional fifth argument REPLACE is non-nil, it means replace the current buffer contents (in the accessible portion) with the file contents. This is better than simply deleting and inserting the whole thing because (1) it preserves some marker positions and (2) it puts less data in the undo list. NOTE: When Mule support is enabled, the REPLACE argument is currently ignored. The coding system used for decoding the file is determined as follows: 1. `coding-system-for-read', if non-nil. 2. The result of `insert-file-contents-pre-hook', if non-nil. 3. The matching value for this filename from `file-coding-system-alist', if any. 4. `buffer-file-coding-system-for-read', if non-nil. 5. The coding system 'no-conversion. If a local value for `buffer-file-coding-system' in the current buffer does not exist, it is set to the coding system which was actually used for reading. See also `insert-file-contents-access-hook', `insert-file-contents-pre-hook', `insert-file-contents-error-hook', and `insert-file-contents-post-hook'. Vwrite-region-pre-hook A special hook to decide the coding system used for writing out a file. Before writing a file, `write-region' calls the functions on this hook with arguments START, END, FILENAME, APPEND, VISIT, and CODING-SYSTEM, the same as the corresponding arguments in the call to `write-region'. The return value of the functions should be either -- nil -- A coding system or a symbol denoting it, indicating the coding system to be used for reading the file -- A list of two elements (absolute pathname and length of data written), which is used as the return value to `write-region'. In this case, `write-region' assumes that the function has written the file for itself and suppresses further writing. If any function returns non-nil, the remaining functions are not called. Vwrite-region-post-hook A hook called by `write-region' after a file has been written out. The functions on this hook are called with arguments START, END, FILENAME, APPEND, VISIT, and CODING-SYSTEM, the same as the corresponding arguments in the call to `write-region'. Fwrite-region Write current region into specified file. By default the file's existing contents are replaced by the specified region. When called from a program, takes three arguments: START, END and FILENAME. START and END are buffer positions. Optional fourth argument APPEND if non-nil means append to existing file contents (if any). Optional fifth argument VISIT if t means set last-save-file-modtime of buffer to this file's modtime and mark buffer not modified. If VISIT is a string, it is a second file name; the output goes to FILENAME, but the buffer is marked as visiting VISIT. VISIT is also the file name to lock and unlock for clash detection. If VISIT is neither t nor nil nor a string, that means do not print the "Wrote file" message. The optional sixth arg LOCKNAME, if non-nil, specifies the name to use for locking and unlocking, overriding FILENAME and VISIT. Kludgy feature: if START is a string, then that string is written to the file, instead of any buffer contents, and END is ignored. Optional seventh argument CODING-SYSTEM specifies the coding system used to encode the text when it is written out, and defaults to the value of `buffer-file-coding-system' in the current buffer. Interactively, with a prefix arg, you will be prompted for the coding system. See also `write-region-pre-hook' and `write-region-post-hook'. Vprocess-coding-system-alist Alist to decide a coding system to use for a process I/O operation. The format is ((PATTERN . VAL) ...), where PATTERN is a regular expression matching a program name, VAL is a coding system, a cons of coding systems, or a function symbol. If VAL is a coding system, it is used for both decoding what received from the program and encoding what sent to the program. If VAL is a cons of coding systems, the car part is used for decoding, and the cdr part is used for encoding. If VAL is a function symbol, the function must return a coding system or a cons of coding systems which are used as above. Fcall-process Call PROGRAM synchronously in separate process. The program's input comes from file INFILE (nil means `/dev/null'). Insert output in BUFFER before point; t means current buffer; nil for BUFFER means discard it; 0 means discard and don't wait. BUFFER can also have the form (REAL-BUFFER STDERR-FILE); in that case, REAL-BUFFER says what to do with standard output, as above, while STDERR-FILE says what to do with standard error in the child. STDERR-FILE may be nil (discard standard error output), t (mix it with ordinary output), or a file name string. Fourth arg DISPLAYP non-nil means redisplay buffer as output is inserted. Remaining arguments are strings passed as command arguments to PROGRAM. If BUFFER is 0, `call-process' returns immediately with value nil. Otherwise it waits for PROGRAM to terminate and returns a numeric exit status or a signal description string. If you quit, the process is killed with SIGINT, or SIGKILL if you quit again. Fcall-process-region Send text from START to END to a synchronous process running PROGRAM. Delete the text if fourth arg DELETEP is non-nil. Insert output in BUFFER before point; t means current buffer; nil for BUFFER means discard it; 0 means discard and don't wait. BUFFER can also have the form (REAL-BUFFER STDERR-FILE); in that case, REAL-BUFFER says what to do with standard output, as above, while STDERR-FILE says what to do with standard error in the child. STDERR-FILE may be nil (discard standard error output), t (mix it with ordinary output), or a file name string. Sixth arg DISPLAYP non-nil means redisplay buffer as output is inserted. Remaining args are passed to PROGRAM at startup as command args. If BUFFER is 0, returns immediately with value nil. Otherwise waits for PROGRAM to terminate and returns a numeric exit status or a signal description string. If you quit, the process is first killed with SIGINT, then with SIGKILL if you quit again before the process exits. Fstart-process Start a program in a subprocess. Return the process object for it. Args are NAME BUFFER PROGRAM &rest PROGRAM-ARGS NAME is name for process. It is modified if necessary to make it unique. BUFFER is the buffer or (buffer-name) to associate with the process. Process output goes at end of that buffer, unless you specify an output stream or filter function to handle the output. BUFFER may be also nil, meaning that this process is not associated with any buffer Third arg is program file name. It is searched for as in the shell. Remaining arguments are strings to give program as arguments. INCODE and OUTCODE specify the coding-system objects used in input/output from/to the process. Vnetwork-coding-system-alist Alist to decide a coding system to use for a network I/O operation. The format is ((PATTERN . VAL) ...), where PATTERN is a regular expression matching a network service name or is a port number to connect to, VAL is a coding system, a cons of coding systems, or a function symbol. If VAL is a coding system, it is used for both decoding what received from the network stream and encoding what sent to the network stream. If VAL is a cons of coding systems, the car part is used for decoding, and the cdr part is used for encoding. If VAL is a function symbol, the function must return a coding system or a cons of coding systems which are used as above. See also the function `find-operation-coding-system'. Fopen-network-stream Open a TCP connection for a service to a host. Returns a subprocess-object to represent the connection. Input and output work as for subprocesses; `delete-process' closes it. Args are NAME BUFFER HOST SERVICE. NAME is name for process. It is modified if necessary to make it unique. BUFFER is the buffer (or buffer-name) to associate with the process. Process output goes at end of that buffer, unless you specify an output stream or filter function to handle the output. BUFFER may be also nil, meaning that this process is not associated with any buffer Third arg is name of the host to connect to, or its IP address. Fourth arg SERVICE is name of the service desired, or an integer specifying a port number to connect to. Fhelp-with-tutorial Select the Emacs learn-by-doing tutorial. If there is a tutorial version written in the language of the selected language environment, that version is used. If there's no tutorial in that language, `TUTORIAL' is selected. With arg, you are asked to select which language. Fdefine-category Make a new category whose designator is DESIGNATOR. DESIGNATOR should be a visible letter of ' ' thru '~'. STRING is a doc string for the category. Letters of 'a' thru 'z' are already used or kept for the system. Fundefine-category Undefine DESIGNATOR as a designator for a category. Fdefined-category-p Return non-nil if DESIGNATOR is a designator for a defined category. Fdefined-category-list Return a list of the currently defined categories. Categories are given by their designators. Fundefined-category-designator Return an undefined category designator, or nil if there are none. Fcategory-doc-string Return the doc-string for the category denoted by DESIGNATOR. Fmodify-category-entry Add a category to the categories associated with CHAR-RANGE. CHAR-RANGE is a single character or a range of characters, as per `put-char-table'. The category is given by a designator character. The changes are made in TABLE, which defaults to the current buffer's category table. If optional fourth argument RESET is non-nil, previous categories associated with CHAR-RANGE are removed before adding the specified category. Fchar-category-list Return a list of the categories that CHAR is in. TABLE defaults to the current buffer's category table. The categories are given by their designators. Fdescribe-category Describe the category specifications in the category table. The descriptions are inserted in a buffer, which is then displayed. Vpredefined-category-list List of predefined categories. Each element is a list of a charset, a designator, and maybe a doc string. Vword-across-newline Regular expression of such characters which can be a word across newline. Fccl-program-p T if OBJECT is a valid CCL compiled code. Fccl-compile Compile a CCL source program and return the compiled equivalent. The return value will be a vector of integers. Fccl-dump Disassemble compiled CCL-CODE. Fdefine-ccl-program Does (defconst NAME (ccl-compile (eval CCL-PROGRAM)) DOC). Byte-compiler expand this macro while compiling. Vself-insert-after-hook Hook to run when extended self insertion command exits. Should take two arguments START and END corresponding to character position. Fstring-width Return number of columns STRING occupies when displayed. Uses the charset-columns attribute of the characters in STRING, which may not accurately represent the actual display width when using a window system. Fdelete-text-in-column Delete the text between column FROM and TO (exclusive) of the current line. Nil of FORM or TO means the current column. If there's a character across the borders, the character is replaced with the same width of spaces before deleting. Fmc-normal-form-string $(BJ8;zNs(B STR $(B$N4A;zI8=`7AJ8;zNs$rJV$9!%(B Fstring-memq Returns non-nil if STR is an element of LIST. Comparison done with string=. The value is actually the tail of LIST whose car is STR. If each element of LIST is not a string, it is converted to string before comparison. Fcancel-undo-boundary Cancel undo boundary. Fchar-bytes Return number of length a CHARACTER occupies in a string or buffer. It returns only 1 in XEmacs. It is for compatibility with MULE 2.3. Fchar-width Return number of columns a CHARACTER occupies when displayed. Ffind-non-ascii-charset-string Return a list of charsets in the STRING except ascii. It might be available for compatibility with Mule 2.3, because its `find-charset-string' ignores ASCII charset. Ffind-non-ascii-charset-region Return a list of charsets except ascii in the region between START and END. It might be available for compatibility with Mule 2.3, because its `find-charset-string' ignores ASCII charset. Fsplit-char Return list of charset and one or two position-codes of CHAR. Fset-buffer-process-coding-system Set coding systems for the process associated with the current buffer. DECODING is the coding system to be used to decode input from the process, ENCODING is the coding system to be used to encode output to the process. For a list of possible values of CODING-SYSTEM, use \[list-coding-systems]. Fdefine-egg-environment Define a new language environment for egg, named by ENV-SYM. DOC-STRING should be a string describing the environment. ENABLE-FUNCTION should be a function of no arguments that will be called when the language environment is made current. Vkinsoku-ascii Do kinsoku-processing for ASCII. Vkinsoku-jis Do kinsoku-processing for JISX0208. Vkinsoku-gb Do kinsoku-processing for GB2312. Vkinsoku-big5 Do kinsoku-processing for Big5.. Vkinsoku-ascii-bol BOL kinsoku for ASCII. Vkinsoku-ascii-eol EOL kinsoku for ASCII. Vkinsoku-jis-bol BOL kinsoku for JISX0208. Vkinsoku-jis-eol EOL kinsoku for JISX0208. Vkinsoku-gb-bol BOL kinsoku for GB2312. Vkinsoku-gb-eol EOL kinsoku for GB2312. Vkinsoku-big5-bol BOL kinsoku for BIG5. Vkinsoku-big5-eol EOL kinsoku for BIG5. Fkinsoku-bol-p Check if point would break forbidden beginning-of-line rules Uses category 's' to check. point$(B$G2~9T$9$k$H9TF,6XB'$K?($l$k$+$I$&$+$r$+$($9!#(B $(B9TF,6XB'J8;z$O(B's'$(B$N(Bcategory$(B$G;XDj$9$k!#(B Fkinsoku-eol-p Check if point would break forbidden end-of-line rules Uses category 'e' to check. point$(B$G2~9T$9$k$H9TKv6XB'$K?($l$k$+$I$&$+$r$+$($9!#(B $(B9TKv6XB'J8;z$O(B's'$(B$N(Bcategory$(B$G;XDj$9$k!#(B Vkinsoku-extend-limit Defines how many characters kinsoku will search forward before giving up. A value of nil equates to infinity. $(B6XB'=hM}$G9T$r?-$P$7$FNI$$H>3QJ8;z?t$r;XDj$9$k!#(B $(BHsIi@0?t0J30$N>l9g$OL58BBg$r0UL#$9$k!#(B Fkinsoku-process Move to a point that will not break forbidden line break rules. $(B6XB'$K?($l$J$$E@$X0F0$9$k!#(B point$(B$,9TF,6XB'$K?($l$k>l9g$O9T$r?-$P$7$F! Fkinsoku-process-extend Move point forward to a permissable for line-breaking. $(B9T$r?-$P$7$F6XB'$K?($l$J$$E@$X0F0$9$k!#(B Fkinsoku-process-shrink Move point backward to a point permissable for line-breaking. $(B9T$r=L$a$F6XB'$K?($l$J$$E@$X0F0$9$k!#(B Fx-use-halfwidth-roman-font Maybe set charset registry of the 'ascii charset to ROMAN-REGISTRY. Do this only if: - the current display is an X device - the displayed width of FULLWIDTH-CHARSET is twice the displayed width of the 'ascii charset, but only when using ROMAN-REGISTRY. Traditionally, Asian characters have been displayed so that they occupy exactly twice the screen space of ASCII (`halfwidth') characters. On many systems, e.g. Sun CDE systems, this can only be achieved by using a national variant roman font to display ASCII. Finit-mule-x-win Initialize X Windows for MULE at startup. Don't call this. Vmule-keymap Keymap for MULE (Multilingual environment) specific commands. Fview-hello-file Display the HELLO file which list up many languages and characters. Funiversal-coding-system-argument Execute an I/O command using the specified coding system. Fset-default-coding-systems Set default value of various coding systems to CODING-SYSTEM. The follwing coding systems are set: o coding system of a newly created buffer o default coding system for terminal output o default coding system for keyboard input o default coding system for subprocess I/O Fprefer-coding-system Add CODING-SYSTEM at the front of the priority list for automatic detection. This also sets the following coding systems to CODING-SYSTEM: o coding system of a newly created buffer o default coding system for terminal output o default coding system for keyboard input o default coding system for subprocess I/O Vlanguage-info-alist Alist of language names vs the corresponding information of various kind. Each element looks like: (LANGUAGE-NAME . ((KEY . INFO) ...)) where LANGUAGE-NAME is a string, KEY is a symbol denoting the kind of information, INFO is any Lisp object which contains the actual information related to KEY. Fget-language-info Return the information for LANGUAGE-NAME of the kind KEY. KEY is a symbol denoting the kind of required information. Fset-language-info Set for LANGUAGE-NAME the information INFO under KEY. KEY is a symbol denoting the kind of information. INFO is any Lisp object which contains the actual information. Currently, the following KEYs are used by Emacs: charset: list of symbols whose values are charsets specific to the language. coding-system: list of coding systems specific to the langauge. tutorial: a tutorial file name written in the language. sample-text: one line short text containing characters of the language. documentation: t or a string describing how Emacs supports the language. If a string is specified, it is shown before any other information of the language by the command `describe-language-environment'. setup-function: a function to call for setting up environment convenient for a user of the language. If KEY is documentation or setup-function, you can also specify a cons cell as INFO, in which case, the car part should be a normal value as INFO for KEY (as described above), and the cdr part should be a symbol whose value is a menu keymap in which an entry for the language is defined. But, only the car part is actually set as the information. We will define more KEYs in the future. To avoid conflict, if you want to use your own KEY values, make them start with `user-'. Fset-language-info-alist Set for LANGUAGE-NAME the information in ALIST. ALIST is an alist of KEY and INFO. See the documentation of `set-langauge-info' for the meanings of KEY and INFO. Fread-language-name Read language name which has information for KEY, prompting with PROMPT. DEFAULT is the default choice of language. This returns a language name as a string. Vleim-list-file-name Name of LEIM list file. This file contains a list of libraries of Emacs input methods (LEIM) in the format of Lisp expression for registering each input method. Emacs loads this file at startup time. Vleim-list-header Header to be inserted in LEIM list file. Vleim-list-entry-regexp Regexp matching head of each entry in LEIM list file. See also the variable `leim-list-header' Vupdate-leim-list-functions List of functions to call to update LEIM list file. Each function is called with one arg, LEIM directory name. Fupdate-leim-list-file Update LEIM list file in directories DIRS. Vcurrent-input-method The current input method for multilingual text. If nil, that means no input method is activated now. Vcurrent-input-method-title Title string of the current input method shown in mode line. Vinput-method-history History list for some commands that read input methods. Vinactivate-current-input-method-function Function to call for inactivating the current input method. Every input method should set this to an appropriate value when activated. This function is called with no argument. This function should never change the value of `current-input-method'. It is set to nil by the function `inactivate-input-method'. Vdescribe-current-input-method-function Function to call for describing the current input method. This function is called with no argument. Vinput-method-alist Alist of input method names vs the corresponding information to use it. Each element has the form: (INPUT-METHOD LANGUAGE-NAME ACTIVATE-FUNC TITLE DESCRIPTION ...) See the function `register-input-method' for the meanings of each elements. Fregister-input-method Register INPUT-METHOD as an input method for LANGUAGE-NAME. INPUT-METHOD and LANGUAGE-NAME are symbols or strings. The remaining arguments are: ACTIVATE-FUNC, TITLE, DESCRIPTION, and ARG ... where, ACTIVATE-FUNC is a function to call for activating this method. TITLE is a string shown in mode-line while this method is active, DESCRIPTION is a string describing about this method, Arguments to ACTIVATE-FUNC are INPUT-METHOD and ARGs. Fread-input-method-name Read a name of input method from a minibuffer prompting with PROMPT. If DEFAULT is non-nil, use that as the default, and substitute it into PROMPT at the first `%s'. If INHIBIT-NULL is non-nil, null input signals an error. The return value is a string. Factivate-input-method Turn INPUT-METHOD on. If some input method is already on, turn it off at first. Finactivate-input-method Turn off the current input method. Fselect-input-method Select and turn on INPUT-METHOD. This sets the default input method to what you specify, and turn it on for the current buffer. Ftoggle-input-method Turn on or off a multilingual text input method for the current buffer. With arg, read an input method from minibuffer and turn it on. Without arg, if some input method is currently activated, turn it off, else turn on an input method selected last time or the default input method (see `default-input-method'). When there's no input method to turn on, turn on what read from minibuffer. Fdescribe-input-method Describe input method INPUT-METHOD. Fdescribe-current-input-method Describe the input method currently in use. Fread-multilingual-string Read a multilingual string from minibuffer, prompting with string PROMPT. The input method selected last time is activated in minibuffer. If optional second arg INITIAL-INPUT is non-nil, insert it in the minibuffer initially. Optional 3rd argument INPUT-METHOD specifies the input method to be activated instead of the one selected last time. It is a symbol or a string. Vinput-method-activate-hook Normal hook run just after an input method is activated. The variable `current-input-method' keeps the input method name just activated. Vinput-method-inactivate-hook Normal hook run just after an input method is inactivated. The variable `current-input-method' still keeps the input method name just inacitvated. Vinput-method-after-insert-chunk-hook Normal hook run just after an input method insert some chunk of text. Vinput-method-exit-on-invalid-key This flag controls the behaviour of an input method on invalid key input. Usually, when a user types a key which doesn't start any character handled by the input method, the key is handled by turning off the input method temporalily. After the key is handled, the input method is back on. But, if this flag is non-nil, the input method is never back on. Fsetup-specified-language-environment Set up multi-lingual environment convenient for the specified language. Vcurrent-language-environment The last language environment specified with `set-language-environment'. Fset-language-environment Set up multi-lingual environment for using LANGUAGE-NAME. This sets the coding system priority and the default input method and sometimes other things. Fdescribe-specified-language-support Describe how Emacs supports the specified language environment. Fdescribe-language-environment Describe how Emacs supports language environment LANGUAGE-NAME. Vchar-code-property-table Char-table containing a property list of each character code. ;; See also the documentation of `get-char-code-property' and `put-char-code-property' Fget-char-code-property Return the value of CHAR's PROPNAME property in `char-code-property-table'. Fput-char-code-property Store CHAR's PROPNAME property with VALUE in `char-code-property-table'. It can be retrieved with `(get-char-code-property CHAR PROPNAME)'. Vccl-encode-big5-1-font CCL program to encode a Big5 code (level1) to code point of Big5 font. Vccl-encode-big5-2-font CCL program to encode a Big5 code (level2) to code point of Big5 font. Vccl-decode-koi8 CCL program to decode KOI8. Vccl-encode-koi8 CCL program to encode KOI8. Vccl-encode-koi8-font CCL program to encode Cyrillic chars to KOI font. Vccl-decode-alternativnyj CCL program to decode Alternativnyj. Vccl-encode-alternativnyj CCL program to encode Alternativnyj. Vccl-encode-alternativnyj-font CCL program to encode Cyrillic chars to Alternativnyj font. Fsetup-english-environment Reset multilingual environment of Emacs to the default status. The default status is as follows. The default value of enable-multibyte-characters is t. The default value of buffer-file-coding-system is nil. The coding system for terminal output is nil. The coding system for keyboard input is nil. The order of priorities of coding categories and the coding system bound to each category are as follows coding category coding system -------------------------------------------------- coding-category-iso-7 iso-2022-7bit coding-category-iso-8-1 iso-8859-1 coding-category-iso-8-2 iso-8859-1 coding-category-iso-7-else iso-2022-7bit-lock coding-category-iso-8-else iso-2022-8bit-ss2 coding-category-emacs-mule no-conversion coding-category-sjis japanese-shift-jis coding-category-big5 chinese-big5 coding-category-binarry no-conversion Fsetup-latin1-environment Set up multilingual environment (MULE) for European Latin-1 users. Fsetup-latin2-environment Set up multilingual environment (MULE) for European Latin-2 users. Fsetup-latin3-environment Set up multilingual environment (MULE) for European Latin-3 users. Fsetup-latin4-environment Set up multilingual environment (MULE) for European Latin-4 users. Fsetup-latin5-environment Set up multilingual environment (MULE) for European Latin-5 users. Fsetup-greek-environment Setup multilingual environment (MULE) for Greek. Fsetup-hebrew-environment Setup multilingual environment (MULE) for Hebrew. But, please note that right-to-left writing is not yet supported. Vjapanese-word-regexp Regular expression used to match a Japanese word. Vspace-insertable Regexp for finding points that can have spaces inserted into them for justification Fsetup-korean-environment Setup multilingual environment (MULE) for Korean. Fsetup-ipa-environment Setup multilingual environment (MULE) for IPA. Vmodeline-multibyte-status Modeline control for showing multibyte extension status. Vauto-language-alist Alist of LANG patterns vs. corresponding language environment. Each element looks like (REGEXP . LANGUAGE-ENVIRONMENT). It the value of the environment variable LANG matches the regexp REGEXP, then `set-language-environment' is called with LANGUAGE-ENVIRONMENT. Finit-mule Initialize MULE environment at startup. Don't call this. Fmake-dialog-frame Create a frame suitable for use as a dialog box. The frame is made a child of PARENT (defaults to the selected frame), and has additional properties PROPS, as well as `dialog-frame-plist'. Normally it also has no modelines, menubars, or toolbars. Fgui-button-p True if OBJECT is a GUI button. Fmake-gui-button Make a GUI button whose label is STRING and whose action is ACTION. If the button is inserted in a buffer and then clicked on, and ACTION is non-nil, ACTION will be called with one argument, USER-DATA. Finsert-gui-button Insert GUI button BUTTON at POS in BUFFER. Vmode-motion-hook Function or functions which are called whenever the mouse moves. You should normally use this rather than `mouse-motion-handler', which does some additional window-system-dependent things. This hook is local to every buffer, and should normally be set up by major-modes which want to use special highlighting. Every time the mouse moves over a window, the mode-motion-hook of the buffer of that window is run. Vmode-motion-help-echo-string String to be added as the 'help-echo property of the mode-motion extent. In order for this to work, you need to add the hook function `mode-motion-add-help-echo' to the mode-motion hook. If this is a function, it will be called with one argument (the event) and should return a string to be added. This variable is local to every buffer. Fmode-motion-highlight-line For use as the value of `mode-motion-hook' -- highlight line under mouse. Fmode-motion-highlight-word For use as the value of `mode-motion-hook' -- highlight word under mouse. Fmode-motion-highlight-symbol For use as the value of `mode-motion-hook' -- highlight symbol under mouse. Fmode-motion-highlight-sexp For use as the value of `mode-motion-hook' -- highlight form under mouse. Fmode-motion-add-help-echo For use as the value of `mode-motion-hook' -- add a 'help-echo property. This causes the string in the 'help-echo property to be displayed when the mouse moves over the extent. See `mode-motion-help-echo-string' for documentation on how to control the string that is added. Vmouse-yank-function Function that is called upon by `mouse-yank' to actually insert text. Fmouse-select Select Emacs window the mouse is on. Fmouse-delete-window Delete the Emacs window the mouse is on. Fmouse-keep-one-window Select Emacs window mouse is on, then kill all other Emacs windows. Fmouse-select-and-split Select Emacs window mouse is on, then split it vertically in half. Fmouse-set-point Select Emacs window mouse is on, and move point to mouse position. Fmouse-yank Paste text with the mouse. If the variable `mouse-yank-at-point' is nil, then pasting occurs at the location of the click; otherwise, pasting occurs at the current cursor location. Fclick-inside-extent-p Returns non-nil if the button event is within the bounds of the primary selection-extent, nil otherwise. Fpoint-inside-extent-p Returns non-nil if the point is within or just after the bounds of the primary selection-extent, nil otherwise. Fmouse-drag-or-yank Either drag or paste the current selection. If the variable `mouse-yank-at-point' is non-nil, then moves the cursor to the location of the click before pasting. This functions has to be improved. Until now it is just a (working) test. Fmouse-offix-drop Do something with an OffiX drop event. Inserts Text drops and executes appropriate commands for specific drops. Text drops follow the `mouse-yank-at-point' variable. Fmouse-eval-sexp Evaluate the sexp under the mouse. Usually, this is the last sexp before the click, but if you click on a left paren, then it is the sexp beginning with the paren that is evaluated. Also, since strings evaluate to themselves, they're fed to re-search-forward and the matched region is highlighted until the mouse button is released. Perhaps the most useful thing about this function is that the evaluation of the expression which is clicked upon is relative not to the window where you click, but to the current window and the current position of point. Thus, you can use `mouse-eval-sexp' to interactively test code that acts upon a buffer...something you cannot do with the standard `eval-last-sexp' function. It's also fantastic for debugging regular expressions. Fmouse-line-length Print the length of the line indicated by the pointer. Fmouse-set-mark Select Emacs window mouse is on, and set mark at mouse position. Display cursor at that position for a second. Fmouse-scroll Scroll point to the mouse position. Fmouse-del-char Delete the char pointed to by the mouse. Fmouse-kill-line Kill the line pointed to by the mouse. Fmouse-bury-buffer Bury the buffer pointed to by the mouse, thus selecting the next one. Fmouse-unbury-buffer Unbury and select the most recently buried buffer. Fnarrow-window-to-region Narrow window to region between point and last mark Fmouse-window-to-region Narrow window to region between cursor and mouse pointer. Fmouse-ignore Don't do anything. Fmouse-scroll-down Junk me, please. Fmouse-scroll-up Junk me, please. Fmouse-scroll-down-full Junk me, please. Fmouse-scroll-up-full Junk me, please. Fmouse-scroll-move-cursor Junk me, please. Fmouse-scroll-absolute Junk me, please. Fincr-scroll-down Junk me, please. Fincr-scroll-up Junk me, please. Fincremental-scroll Junk me, please. Fincr-scroll-stop Junk me, please. Fmouse-scroll-left Junk me, please. Fmouse-scroll-right Junk me, please. Fmouse-scroll-left-full Junk me, please. Fmouse-scroll-right-full Junk me, please. Fmouse-scroll-move-cursor-horizontally Junk me, please. Fmouse-scroll-absolute-horizontally Junk me, please. Vdefault-mouse-track-normalize-point-function Function called to normalize position of point. Called with two arguments: TYPE depends on the number of times that the mouse has been clicked and is a member of `default-mouse-track-type-list', FORWARDP determines the direction in which the point should be moved. Vmouse-track-down-hook Function or functions called when the user presses the mouse. This hook is invoked by `mouse-track'; thus, it will not be called for any buttons with a different binding. The functions will be called with two arguments: the button-press event and a click count (see `mouse-track-click-hook'). If any function returns non-nil, the remaining functions will not be called. Note that most applications should take action when the mouse is released, not when it is pressed.' Vmouse-track-drag-hook Function or functions called when the user drags the mouse. This hook is invoked by `mouse-track'; thus, it will not be called for any buttons with a different binding. The functions will be called with three arguments: the mouse-motion event, a click count (see `mouse-track-click-hook'), and whether the call to this hook occurred as a result of a drag timeout (see `mouse-track-scroll-delay'). If any function returns non-nil, the remaining functions will not be called. Note that no calls to this function will be made until the user initiates a drag (i.e. moves the mouse more than a certain threshold in either the X or the Y direction, as defined by `mouse-track-x-threshold' and `mouse-track-y-threshold'). See also `mouse-track-drag-up-hook'. Vmouse-track-drag-up-hook Function or functions called when the user finishes a drag. This hook is invoked by `mouse-track'; thus, it will not be called for any buttons with a different binding. The functions will be called with two arguments: the button-press event and a click count (see `mouse-track-click-hook'). If any function returns non-nil, the remaining functions will not be called. Note that this hook will not be invoked unless the user has initiated a drag, i.e. moved the mouse more than a certain threshold (see `mouse-track-drag-hook'). When this function is invoked, `mouse-track-drag-hook' will have been invoked at least once. See also `mouse-track-click-hook'. Vmouse-track-click-hook Function or functions called when the user clicks the mouse. `Clicking' means pressing and releasing the mouse without having initiated a drag (i.e. without having moved more than a certain threshold -- see `mouse-track-drag-hook'). This hook is invoked by `mouse-track'; thus, it will not be called for any buttons with a different binding. The functions will be called with two arguments: the button-release event and a click count, which specifies the number of times that the mouse has been clicked in a series of clicks, each of which is separated by at most `mouse-track-multi-click-time'. This can be used to implement actions that are called on double clicks, triple clicks, etc. If any function returns non-nil, the remaining functions will not be called. See also `mouse-track-drag-up-hook. Vmouse-track-up-hook Function or functions called when the user releases the mouse. This hook is invoked by `mouse-track'; thus, it will not be called for any buttons with a different binding. The functions will be called with two arguments: the button-release event and a click count (see `mouse-track-click-hook'). For many applications, it is more appropriate to use one or both of `mouse-track-click-hook' and `mouse-track-drag-up-hook'. Vmouse-track-cleanup-hook Function or functions called when `mouse-track' terminates. This hook will be called in all circumstances, even upon a non-local exit out of `mouse-track', and so is useful for doing cleanup work such as removing extents that may have been created during the operation of `mouse-track'. Unlike all of the other mouse-track hooks, this is a "normal" hook: the hook functions are called with no arguments, and all hook functions are called regardless of their return values. Vmouse-track-x-threshold Minimum number of pixels in the X direction for a drag to be initiated. If the mouse is moved more than either the X or Y threshold while the button is held down (see also `mouse-track-y-threshold'), then a drag is initiated; otherwise the gesture is considered to be a click. See `mouse-track'. The value should be either a number of a form to be evaluated to produce a number. Vmouse-track-y-threshold Minimum number of pixels in the Y direction for a drag to be initiated. If the mouse is moved more than either the X or Y threshold while the button is held down (see also `mouse-track-x-threshold'), then a drag is initiated; otherwise the gesture is considered to be a click. See `mouse-track'. The value should be either a number of a form to be evaluated to produce a number. Fmouse-track Make a selection with the mouse. This should be bound to a mouse button. The behavior of XEmacs during mouse selection is customizable using various hooks and variables: see `mouse-track-click-hook', `mouse-track-drag-hook', `mouse-track-drag-up-hook', `mouse-track-down-hook', `mouse-track-up-hook', `mouse-track-cleanup-hook', `mouse-track-multi-click-time', `mouse-track-scroll-delay', `mouse-track-x-threshold', and `mouse-track-y-threshold'. Default handlers are provided to implement standard selecting/positioning behavior. You can explicitly request this default behavior, and override any custom-supplied handlers, by using the function `mouse-track-default' instead of `mouse-track'. Default behavior is as follows: If you click-and-drag, the selection will be set to the region between the point of the initial click and the point at which you release the button. These positions need not be ordered. If you click-and-release without moving the mouse, then the point is moved and the selection is disowned (there will be no selection owner). The mark will be set to the previous position of point. If you double-click, the selection will extend by symbols instead of by characters. If you triple-click, the selection will extend by lines. If you drag the mouse off the top or bottom of the window, you can select pieces of text which are larger than the visible part of the buffer; the buffer will scroll as necessary. The selected text becomes the current X Selection. The point will be left at the position at which you released the button, and the mark will be left at the initial click position. Fmouse-track-default Invoke `mouse-track' with only the default handlers active. Fmouse-track-do-rectangle Like `mouse-track' but selects rectangles instead of regions. Fmouse-track-adjust Extend the existing selection. This should be bound to a mouse button. The selection will be enlarged or shrunk so that the point of the mouse click is one of its endpoints. This function in fact behaves fairly similarly to `mouse-track', but begins by extending the existing selection (or creating a new selection from the previous text cursor position to the current mouse position) instead of creating a new, empty selection. The mouse-track handlers are run from this command just like from `mouse-track'. Therefore, do not call this command from a mouse-track handler! Fmouse-track-adjust-default Extend the existing selection, using only the default handlers. This is just like `mouse-track-adjust' but will override any custom mouse-track handlers that the user may have installed. Fmouse-track-insert Make a selection with the mouse and insert it at point. This is exactly the same as the `mouse-track' command on \[mouse-track], except that point is not moved; the selected text is immediately inserted after being selected; and the selection is immediately disowned afterwards. Fmouse-track-delete-and-insert Make a selection with the mouse and insert it at point. This is exactly the same as the `mouse-track' command on \[mouse-track], except that point is not moved; the selected text is immediately inserted after being selected; and the text of the selection is deleted. Vinhibit-help-echo Inhibits display of `help-echo' extent properties in the minibuffer. Fdefault-mouse-motion-handler For use as the value of `mouse-motion-handler'. This implements the various pointer-shape variables, as well as extent highlighting, help-echo, toolbar up/down, and `mode-motion-hook'. Fmaybe-add-init-button Don't call this. Adds `Load .emacs' button to menubar when starting up with -q. Ffile-menu-filter Incrementally update the file menu. This function changes the arguments and sensitivity of these File menu items: Delete Buffer has the name of the current buffer appended to it. Print Buffer has the name of the current buffer appended to it. Pretty-Print Buffer has the name of the current buffer appended to it. Save has the name of the current buffer appended to it, and is sensitive only when the current buffer is modified. Revert Buffer has the name of the current buffer appended to it, and is sensitive only when the current buffer has a file. Delete Frame sensitive only when there is more than one frame. The name of the current buffer is only appended to the menu items if `put-buffer-names-in-file-menu' is non-nil. This behavior is the default. Fedit-menu-filter For use as an incremental menu construction filter. This function changes the sensitivity of these Edit menu items: Cut sensitive only when emacs owns the primary X Selection. Copy sensitive only when emacs owns the primary X Selection. Clear sensitive only when emacs owns the primary X Selection. Paste sensitive only when there is an owner for the X Clipboard Selection. Undo sensitive only when there is undo information. While in the midst of an undo, this is changed to "Undo More". Fbookmark-menu-filter *Build the bookmark jump submenu dynamically from all defined bookmarks. Fbookmark-delete-filter *Build the bookmark delete submenu dynamically from all defined bookmarks. Fbuffers-menu-omit-invisible-buffers For use as a value of `buffers-menu-omit-function'. Omits normally invisible buffers (those whose name begins with a space). Fsort-buffers-menu-alphabetically For use as a value of `buffers-menu-sort-function'. Sorts the buffers in alphabetical order by name, but puts buffers beginning with a star at the end of the list. Fsort-buffers-menu-by-mode-then-alphabetically For use as a value of `buffers-menu-sort-function'. Sorts first by major mode and then alphabetically by name, but puts buffers beginning with a star at the end of the list. Fslow-format-buffers-menu-line For use as a value of `buffers-menu-format-buffer-line-function'. This returns a string containing a bunch of info about the buffer. Fformat-buffers-menu-line For use as a value of `buffers-menu-format-buffer-line-function'. This just returns the buffer's name. Fgroup-buffers-menu-by-mode-then-alphabetically For use as a value of `buffers-menu-grouping-function'. This groups buffers by major mode. It only really makes sense if `buffers-menu-sorting-function' is `sort-buffers-menu-by-mode-then-alphabetically'. Fbuffers-menu-filter This is the menu filter for the top-level buffers "Buffers" menu. It dynamically creates a list of buffers to use as the contents of the menu. Only the most-recently-used few buffers will be listed on the menu, for efficiency reasons. You can control how many buffers will be shown by setting `buffers-menu-max-size'. You can control the text of the menu items by redefining the function `format-buffers-menu-line'. Flanguage-environment-menu-filter This is the menu filter for the "Language Environment" submenu. Voptions-save-faces if t, save-options will save all the face information. Set to nil to avoid this. This is recommended on XEmacs 19.15 and above as we have a much more powerful (read: working) way of changing and saving faces via cu-edit-faces.el & custom.el. Voptions-menu-saved-forms The variables to save; or forms to evaluate to get forms to write out. This is used by `save-options-menu-settings' and should mirror the options listed in the Options menu. Fsave-options-non-customized-face-list This function will return a list of all faces that have not been 'customized'. Vsave-options-init-file File into which to save forms to load the options file (nil for .emacs). Normally this is nil, which means save into your .emacs file (the value of `user-init-file'. Vsave-options-file File to save options into. This file is loaded from your .emacs file. If this is a relative filename, it is put into the same directory as your .emacs file. Fsave-options-menu-settings Saves the current settings of the `Options' menu to your `.emacs' file. Vglobal-popup-menu The global popup menu. This is present in all modes. See the function `popup-menu' for a description of menu syntax. Vmode-popup-menu The mode-specific popup menu. Automatically buffer local. This is appended to the default items in `global-popup-menu'. See the function `popup-menu' for a description of menu syntax. Vactivate-popup-menu-hook Function or functions run before a mode-specific popup menu is made visible. These functions are called with no arguments, and should interrogate and modify the value of `global-popup-menu' or `mode-popup-menu' as desired. Note: this hook is only run if you use `popup-mode-menu' for activating the global and mode-specific commands; if you have your own binding for button3, this hook won't be run. Fpopup-mode-menu Pop up a menu of global and mode-specific commands. The menu is computed by combining `global-popup-menu' and `mode-popup-menu'. Fpopup-buffer-menu Pop up a copy of the Buffers menu (from the menubar) where the mouse is clicked. Fpopup-menubar-menu Pop up a copy of menu that also appears in the menubar Fxemacs-splash-buffer Redisplay XEmacs splash screen in a buffer. Fx-make-font-bold Given an X font specification, this attempts to make a `bold' font. If it fails, it returns nil. Fx-make-font-unbold Given an X font specification, this attempts to make a non-bold font. If it fails, it returns nil. Fx-make-font-italic Given an X font specification, this attempts to make an `italic' font. If it fails, it returns nil. Fx-make-font-unitalic Given an X font specification, this attempts to make a non-italic font. If it fails, it returns nil. Fx-make-font-bold-italic Given an X font specification, this attempts to make a `bold-italic' font. If it fails, it returns nil. Fx-font-size Return the nominal size of the given font. This is done by parsing its name, so it's likely to lose. X fonts can be specified (by the user) in either pixels or 10ths of points, and this returns the first one it finds, so you have to decide which units the returned value is measured in yourself... Fx-find-smaller-font Loads a new, slightly smaller version of the given font (or font name). Returns the font if it succeeds, nil otherwise. If scalable fonts are available, this returns a font which is 1 point smaller. Otherwise, it returns the next smaller version of this font that is defined. Fx-find-larger-font Loads a new, slightly larger version of the given font (or font name). Returns the font if it succeeds, nil otherwise. If scalable fonts are available, this returns a font which is 1 point larger. Otherwise, it returns the next larger version of this font that is defined. Viso8859/1-code-to-x-keysym-table Maps iso8859/1 to an X keysym name which corresponds to it. There may be more than one X name for this keycode; this returns the first one. Note that this is X specific; one should avoid using this table whenever possible, in the interest of portability. Fx-mouse-kill Kill the text between the point and mouse and copy it to the clipboard and to the cut buffer Fx-yank-function Insert the current X selection or, if there is none, insert the X cutbuffer. A mark is pushed, so that the inserted text lies between point and mark. Fx-insert-selection Insert the current selection into buffer at point. Fx-set-point-and-insert-selection Set point where clicked and insert the primary selection or the cut buffer. Fx-set-point-and-move-selection Set point where clicked and move the selected text to that location. Fmouse-track-and-copy-to-cutbuffer Make a selection like `mouse-track', but also copy it to the cutbuffer. Fx-init-pointer-shape Initializes the mouse-pointers of the given device from the resource database. Vx-selected-text-type The type atom used to obtain selections from the X server. Can be either a valid X selection data type, or a list of such types. COMPOUND_TEXT and STRING are the most commonly used data types. If a list is provided, the types are tried in sequence until there is a successful conversion. Fx-get-selection Return the value of an X Windows selection. The argument TYPE (default `PRIMARY') says which selection, and the argument DATA-TYPE (default `STRING', or `COMPOUND_TEXT' under Mule) says how to convert the data. Fx-get-secondary-selection Return text selected from some X window. Fx-get-clipboard Return text pasted to the clipboard. Vprimary-selection-extent The extent of the primary selection; don't use this. Vsecondary-selection-extent The extent of the secondary selection; don't use this. Fx-own-selection Make an X Windows selection of type TYPE and value DATA. The argument TYPE (default `PRIMARY') says which selection, and DATA specifies the contents. DATA may be a string, a symbol, an integer (or a cons of two integers or list of two integers). The selection may also be a cons of two markers pointing to the same buffer, or an overlay. In these cases, the selection is considered to be the text between the markers *at whatever time the selection is examined*. Thus, editing done in the buffer after you specify the selection can alter the effective value of the selection. The data may also be a vector of valid non-vector selection values. Interactively, the text of the region is used as the selection value. Fx-own-secondary-selection Make a secondary X Selection of the given argument. The argument may be a string or a cons of two markers (in which case the selection is considered to be the text between those markers). Fx-own-clipboard Paste the given string to the X Clipboard. Fx-disown-selection Assuming we own the selection, disown it. With an argument, discard the secondary selection instead of the primary selection. Fx-dehilight-selection for use as a value of `x-lost-selection-hooks'. Fx-notice-selection-requests for possible use as the value of x-sent-selection-hooks. Fx-notice-selection-failures for possible use as the value of x-sent-selection-hooks. Fx-get-cutbuffer Returns the value of one of the 8 X server cut buffers. Optional arg WHICH-ONE should be a number from 0 to 7, defaulting to 0. Cut buffers are considered obsolete; you should use selections instead. This function does nothing if support for cut buffers was not compiled into Emacs. Fx-store-cutbuffer Store STRING into the X server's primary cut buffer. If PUSH is non-nil, also rotate the cut buffers: this means the previous value of the primary cut buffer moves the second cut buffer, and the second to the third, and so on (there are 8 buffers.) Cut buffers are considered obsolete; you should use selections instead. This function does nothing if support for cut buffers was not compiled into Emacs. Fx-copy-primary-selection Copy the selection to the Clipboard and the kill ring. Fx-kill-primary-selection Copy the selection to the Clipboard and the kill ring, then delete it. Fx-delete-primary-selection Delete the selection without copying it to the Clipboard or the kill ring. Fx-yank-clipboard-selection Insert the current Clipboard selection at point. Fxselect-convert-to-name xemacs Fx-bogosity-check-resource Check for a bogus resource specification. Fx-init-specifier-from-resources Initialize a specifier from the resource database. LOCALE specifies the locale that is to be initialized and should be a frame, a device, or 'global. TYPE is the type of the resource and should be one of 'string, 'boolean, 'integer, or 'natnum. The remaining args should be conses of names and classes of resources to be examined. The first resource with a value specified becomes the spec for SPECIFIER in LOCALE. (However, if SPECIFIER already has a spec in LOCALE, nothing is done.) Finally, if LOCALE is 'global, a check is done for bogus resource specifications. Fow-find Search forward the next occurrence of the text of the selection. Fow-find-backward Search backward for the previous occurrence of the text of the selection. Fx-initialize-compose Enable compose processing Fx-initialize-keyboard Perform X-Server-specific initializations. Don't call this. Finit-pre-x-win Initialize X Windows at startup (pre). Don't call this. Finit-x-win Initialize X Windows at startup. Don't call this. Finit-post-x-win Initialize X Windows at startup (post). Don't call this. Fmake-frame-on-display Create a frame on the X display named DISPLAY. DISPLAY should be a standard display string such as "unix:0", or nil for the display specified on the command line or in the DISPLAY environment variable. PROPS should be a plist of properties, as in the call to `make-frame'. This function opens a connection to the display or reuses an existing connection. This function is a trivial wrapper around `make-frame-on-device'. Ftoolbar-ispell Intelligently spell the region or buffer. Ftoolbar-mail Run mail in a separate frame. Vtoolbar-info-frame The frame in which info is displayed. Ftoolbar-info Run info in a separate frame. Ftoolbar-compile Run compile without having to touch the keyboard. Vtoolbar-news-frame The frame in which news is displayed. Vtoolbar-news-frame-properties The properties of the frame in which news is displayed. Ftoolbar-gnus Run Gnus in a separate frame. Ftoolbar-news Run News (in a separate frame??). Vtoolbar-last-win-icon A `last-win' icon set. Vtoolbar-next-win-icon A `next-win' icon set. Vtoolbar-file-icon A `file' icon set. Vtoolbar-folder-icon A `folder' icon set Vtoolbar-disk-icon A `disk' icon set. Vtoolbar-printer-icon A `printer' icon set. Vtoolbar-cut-icon A `cut' icon set. Vtoolbar-copy-icon A `copy' icon set. Vtoolbar-paste-icon A `paste' icon set. Vtoolbar-undo-icon An `undo' icon set. Vtoolbar-spell-icon A `spell' icon set. Vtoolbar-replace-icon A `replace' icon set. Vtoolbar-mail-icon A `mail' icon set. Vtoolbar-info-icon An `info' icon set. Vtoolbar-compile-icon A `compile' icon set. Vtoolbar-debug-icon A `debugger' icon set. Vtoolbar-news-icon A `news' icon set. Vinitial-toolbar-spec The initial toolbar for a buffer. Finit-pre-tty-win Initialize TTY at startup (pre). Don't call this. Finit-post-tty-win Initialize TTY at console creation time (post). Don't call this. Finit-tty-win Initialize TTY at startup. Don't call this. Fmake-frame-on-tty Create a frame on the TTY connection named TTY. TTY should be a TTY device name such as "/dev/ttyp3" (as returned by the `tty' command in that TTY), or nil for the standard input/output of the running XEmacs process. PROPS should be a plist of properties, as in the call to `make-frame'. This function opens a connection to the TTY or reuses an existing connection. This function is a trivial wrapper around `make-frame-on-device'. Ffont-lock-set-defaults Set fontification defaults appropriately for this mode. Sets `font-lock-keywords', `font-lock-keywords-only', `font-lock-syntax-table', `font-lock-beginning-of-syntax-function' and `font-lock-keywords-case-fold-search'. If `font-lock-defaults' is currently set, it is used. Otherwise, the symbol naming the major mode is examined for a `font-lock-defaults' property. If that is not present, but a variable `foo-mode-font-lock-keywords' is, the value of that variable is used as the default for `font-lock-keywords'. Various other backward-compatible behaviors also exist -- if you're curious, look at the source. The value of `font-lock-maximum-decoration' is used to determine which set of keywords applies, if more than one exists. This will also put the buffer into Font Lock mode if any keywords exist and if auto-fontification is called for, as determined by `font-lock-auto-fontify', `font-lock-mode-enable-list', and `font-lock-mode-disable-list'. Calling this function multiple times in the same buffer is safe -- this function keeps track of whether it has already been called in this buffer, and does nothing if so. This allows for multiple ways of getting Font Lock properly initialized in a buffer, to deal with existing major modes that do not call this function. (For example, Font Lock adds this function to `find-file-hooks'.) Major modes that have any font-lock defaults specified should call this function during their initialization process, after they have set the variable `major-mode'. If EXPLICIT-DEFAULTS is t, this function will not check whether it has already been run in this buffer, and will always do the full computation. If EXPLICIT-DEFAULTS is not nil and not t, it should be something that is allowable as a value for `font-lock-defaults' and will be used to initialize the Font Lock variables. Fauto-show-truncationp True if line truncation is enabled for the selected window. Fauto-show-mode Turn automatic horizontal scroll mode on or off. With arg, turn auto scrolling on if arg is positive, off otherwise. This mode is enabled or disabled for each buffer individually. It takes effect only when `truncate-lines' is non-nil. Vauto-show-inhibiting-commands Commands that inhibit auto-show behavior. This normally includes the horizontal scrollbar commands. Fauto-show-make-region-visible Move point in such a way that the region (START, END) is visible. This only does anything if auto-show-mode is enabled, and it doesn't actually do any horizontal scrolling; rather, it just sets things up so that the region will be visible when `auto-show-make-point-visible' is next called (this happens after every command). Fauto-show-make-point-visible Scroll horizontally to make point visible, if that is enabled. This function only does something if `auto-show-mode' is non-nil and longlines are being truncated in the selected window. See also the command `auto-show-mode'. Fvm View Mail: an alternate mail reader for emacs. Optional first arg FOLDER specifies the folder to visit. It defaults to the value of vm-primary-inbox. The folder buffer is put into VM mode, a major mode for reading mail. Prefix arg or optional second arg READ-ONLY non-nil indicates that the folder should be considered read only. No attribute changes, messages additions or deletions will be allowed in the visited folder. Visiting the primary inbox causes any contents of the system mailbox to be moved and appended to the resulting buffer. All the messages can be read by repeatedly pressing SPC. Use `n'ext and `p'revious to move about in the folder. Messages are marked for deletion with `d', and saved to another folder with `s'. Quitting VM with `q' expunges deleted messages and saves the buffered folder to disk. See the documentation for vm-mode for more information. Fvm-mode View Mail: an alternate mail reader for emacs. Commands: h - summarize folder contents j - discard cached information about the current message n - go to next message p - go to previous message N - like `n' but ignores skip-variable settings P - like `p' but ignores skip-variable settings M-n - go to next unread message M-p - go to previous unread message RET - go to numbered message (uses prefix arg or prompts in minibuffer) TAB - go to last message seen M-s - incremental search through the folder t - display hidden headers SPC - scroll forward a page (if at end of message, then display next message) b - scroll backward a page < - go to beginning of current message > - go to end of current message d - delete message, prefix arg deletes messages forward (flag as deleted) C-d - delete message, prefix arg deletes messages backward (flag as deleted) u - undelete k - flag for deletion all messages with same subject as the current message r - reply (only to the sender of the message) R - reply with included text for current message M-r - extract and resend bounced message f - followup (reply to all recipients of message) F - followup with included text from the current message z - forward the current message m - send a message B - resend the current message to another user. c - continue composing the most recent message you were composing @ - digestify and mail entire folder contents (the folder is not modified) * - burst a digest into individual messages, and append and assimilate these message into the current folder. G - sort messages by various keys g - get any new mail that has arrived in the system mailbox (new mail is appended to the disk and buffer copies of the primary inbox.) v - visit another mail folder V - visit a virtual folder e - edit the current message s - save current message in a folder (appends if folder already exists) w - write current message to a file without its headers (appends if exists) S - save entire folder to disk, expunging deleted messages A - save unfiled messages to their vm-auto-folder-alist specified folders # - expunge deleted messages (without saving folder) q - quit VM, deleted messages are expunged, folder saved to disk x - exit VM with no change to the folder M N - use marks; the next vm command will affect only marked messages if it makes sense for the command to do so M M - mark the current message M U - unmark the current message M m - mark all messages M u - unmark all messages M ? - help for the mark commands W S - save the current window configuration to a name W D - delete a window configuration W W - apply a configuration W ? - help for the window configuration commands C-_ - undo, special undo that retracts the most recent changes in message attributes. Expunges and saves cannot be undone. C-x u is also bound to this command. L - reload your VM init file, ~/.vm ? - help ! - run a shell command | - run a shell command with the current message as input M-C - view conditions under which you may redistribute VM M-W - view the details of VM's lack of a warranty Variables: vm-auto-center-summary vm-auto-folder-alist vm-auto-folder-case-fold-search vm-auto-get-new-mail vm-auto-next-message vm-berkeley-mail-compatibility vm-check-folder-types vm-convert-folder-types vm-circular-folders vm-confirm-new-folders vm-confirm-quit vm-crash-box vm-delete-after-archiving vm-delete-after-bursting vm-delete-after-saving vm-delete-empty-folders vm-digest-burst-type vm-digest-center-preamble vm-digest-preamble-format vm-digest-send-type vm-folder-directory vm-folder-read-only vm-follow-summary-cursor vm-forwarded-headers vm-forwarding-digest-type vm-forwarding-subject-format vm-gargle-uucp vm-highlighted-header-regexp vm-honor-page-delimiters vm-in-reply-to-format vm-included-text-attribution-format vm-included-text-prefix vm-inhibit-startup-message vm-invisible-header-regexp vm-jump-to-new-messages vm-jump-to-unread-messages vm-keep-sent-messages vm-mail-header-from vm-mail-mode-hook vm-mail-window-percentage vm-mode-hook vm-move-after-deleting vm-move-after-undeleting vm-mutable-windows vm-preview-lines vm-preview-read-messages vm-primary-inbox vm-recognize-pop-maildrops vm-reply-ignored-addresses vm-reply-subject-prefix vm-resend-bounced-headers vm-resend-bounced-discard-header-regexp vm-resend-headers vm-resend-discard-header-regexp vm-retain-message-order vm-rfc1153-digest-discard-header-regexp vm-rfc1153-digest-headers vm-rfc934-digest-discard-header-regexp vm-rfc934-digest-headers vm-search-using-regexps vm-skip-deleted-messages vm-skip-read-messages vm-spool-files vm-startup-with-summary vm-strip-reply-headers vm-summary-format vm-unforwarded-header-regexp vm-virtual-folder-alist vm-virtual-mirror vm-visible-headers vm-visit-when-saving vm-window-configuration-file Fvm-visit-folder Visit a mail file with View Mail, an alternate mail reader for emacs. See the description of the `vm' and `vm-mode' functions. VM will parse and present its messages to you in the usual way. First arg FOLDER specifies the mail file to visit. When this command is called interactively the file name is read from the minibuffer. Prefix arg or optional second arg READ-ONLY non-nil indicates that the folder should be considered read only. No attribute changes, messages additions or deletions will be allowed in the visited folder. Fvm-mail Send a mail message from within View Mail, or from without. Freset-device-font-menus Generates the `Font', `Size', and `Weight' submenus for the Options menu. This is run the first time that a font-menu is needed for each device. If you don't like the lazy invocation of this function, you can add it to `create-device-hook' and that will make the font menus respond more quickly when they are selected for the first time. If you add fonts to your system, or if you change your font path, you can call this to re-initialize the menus. Furl-get-authentication Return an authorization string suitable for use in the WWW-Authenticate header in an HTTP/1.0 request. URL is the url you are requesting authorization to. This can be either a string representing the URL, or the parsed representation returned by `url-generic-parse-url' REALM is the realm at a specific site we are looking for. This should be a string specifying the exact realm, or nil or the symbol 'any' to specify that the filename portion of the URL should be used as the realm TYPE is the type of authentication to be returned. This is either a string representing the type (basic, digest, etc), or nil or the symbol 'any' to specify that any authentication is acceptable. If requesting 'any' the strongest matching authentication will be returned. If this is wrong, its no big deal, the error from the server will specify exactly what type of auth to use PROMPT is boolean - specifies whether to ask the user for a username/password if one cannot be found in the cache Furl-register-auth-scheme Register an HTTP authentication method. TYPE is a string or symbol specifying the name of the method. This should be the same thing you expect to get returned in an Authenticate header in HTTP/1.0 - it will be downcased. FUNCTION is the function to call to get the authorization information. This defaults to `url-?-auth', where ? is TYPE RATING a rating between 1 and 10 of the strength of the authentication. This is used when asking for the best authentication for a specific URL. The item with the highest rating is returned. Furl-store-in-cache Store buffer BUFF in the cache Furl-is-cached Return non-nil if the URL is cached. Furl-cache-extract Extract FNAM from the local disk cache Furl-cache-expired Return t iff a cached file has expired. Furl-cookie-retrieve Retrieves all the netscape-style cookies for a specified HOST and PATH Furl-gateway-nslookup-host Attempt to resolve the given HOSTNAME using nslookup if possible. Furl-open-stream Open a stream to a host Furl-file-attributes Return a list of attributes of URL. Value is nil if specified file cannot be opened. Otherwise, list elements are: 0. t for directory, string (name linked to) for symbolic link, or nil. 1. Number of links to file. 2. File uid. 3. File gid. 4. Last access time, as a list of two integers. First integer has high-order 16 bits of time, second has low 16 bits. 5. Last modification time, likewise. 6. Last status change time, likewise. 7. Size in bytes. (-1, if number is out of range). 8. File modes, as a string of ten letters or dashes as in ls -l. If URL is on an http server, this will return the content-type if possible. 9. t iff file's gid would change if file were deleted and recreated. 10. inode number. 11. Device number. If file does not exist, returns nil. Furl-normalize-url Return a 'normalized' version of URL. This strips out default port numbers, etc. Furl-buffer-visiting Return the name of a buffer (if any) that is visiting URL. Furl-setup-save-timer Reset the history list timer. Furl-do-setup Do setup - this is to avoid conflict with user settings when URL is dumped with emacs. Furl-get-url-at-point Get the URL closest to point, but don't change your position. Has a preference for looking backward when not directly on a symbol. Furl-popup-info Retrieve the HTTP/1.0 headers and display them in a temp buffer. Furl-retrieve Retrieve a document over the World Wide Web. The document should be specified by its fully specified Uniform Resource Locator. No parsing is done, just return the document as the server sent it. The document is left in the buffer specified by url-working-buffer. url-working-buffer is killed immediately before starting the transfer, so that no buffer-local variables interfere with the retrieval. HTTP/1.0 redirection will be honored before this function exits. Fw3-read-html-bookmarks Import an HTML file into the Emacs-w3 format. Fw3-hotlist-apropos Show hotlist entries matching REGEXP. Fw3-hotlist-refresh Reload the default hotlist file into memory Fw3-hotlist-delete Deletes a document from your hotlist file Fw3-hotlist-rename-entry Rename a hotlist item Fw3-hotlist-append Append a hotlist to the one in memory Fw3-parse-hotlist Read in the hotlist specified by FNAME Fw3-use-hotlist Possibly go to a link in your W3/Mosaic hotlist. This is part of the emacs World Wide Web browser. It will prompt for one of the items in your 'hotlist'. A hotlist is a list of often visited or interesting items you have found on the World Wide Web. Fw3-hotlist-add-document-at-point Add the document pointed to by the hyperlink under point to the hotlist. Fw3-hotlist-add-document Add this documents url to the hotlist Fw3-show-dvi Uses xdvi to show DVI file created from `w3-parse-tree-to-latex'. Fw3-print-this-url Print out the current document (in LaTeX format) Fw3-print-url-under-point Print out the url under point (in LaTeX format) Fw3-display-stylesheet Display the stylesheet for the current document. Fw3-open-local Find a local file, and interpret it as a hypertext document. It will prompt for an existing file or directory, and retrieve it as a hypertext document. Fw3-find-file Find a local file, and interpret it as a hypertext document. It will prompt for an existing file or directory, and retrieve it as a hypertext document. Fw3-fetch-other-frame Attempt to follow the hypertext reference under point in a new frame. With prefix-arg P, ignore viewers and dump the link straight to disk. Fw3-fetch Retrieve a document over the World Wide Web. Defaults to URL of the current document, if any. With prefix argument, use the URL of the hyperlink under point instead. Fw3-maybe-follow-link-mouse Maybe follow a hypertext link under point. If there is no link under point, this will try using url-get-url-at-point Fw3-maybe-follow-link Maybe follow a hypertext link under point. If there is no link under point, this will try using url-get-url-at-point Fw3-follow-url-at-point-other-frame Follow the URL under PT, defaults to link under (point) Fw3-follow-url-at-point Follow the URL under PT, defaults to link under (point) Fw3-preview-this-buffer See what this buffer will look like when its formatted as HTML. HTML is the HyperText Markup Language used by the World Wide Web to specify formatting for text. More information on HTML can be found at ftp.w3.org:/pub/www/doc. Fw3-version Show the version number of W3 in the minibuffer. If optional argument HERE is non-nil, insert info at point. Fw3 Retrieve the default World Wide Web home page. The World Wide Web is a global hypertext system started by CERN in Switzerland in 1991. The home page is specified by the variable w3-default-homepage. The document should be specified by its fully specified Uniform Resource Locator. The document will be parsed as HTML (if appropriate) and displayed in a new buffer. Fw3-do-setup Do setup - this is to avoid conflict with user settings when W3 is dumped with emacs. Fw3-follow-link-other-frame Attempt to follow the hypertext reference under point in a new frame. With prefix-arg P, ignore viewers and dump the link straight to disk. Fw3-follow-link Attempt to follow the hypertext reference under point. With prefix-arg P, ignore viewers and dump the link straight to disk. Fvm Read mail under Emacs. Optional first arg FOLDER specifies the folder to visit. It defaults to the value of vm-primary-inbox. The folder buffer is put into VM mode, a major mode for reading mail. Prefix arg or optional second arg READ-ONLY non-nil indicates that the folder should be considered read only. No attribute changes, message additions or deletions will be allowed in the visited folder. Visiting the primary inbox causes any contents of the system mailbox to be moved and appended to the resulting buffer. All the messages can be read by repeatedly pressing SPC. Use `n'ext and `p'revious to move about in the folder. Messages are marked for deletion with `d', and saved to another folder with `s'. Quitting VM with `q' expunges deleted messages and saves the buffered folder to disk. See the documentation for vm-mode for more information. Fvm-other-frame Like vm, but run in a newly created frame. Fvm-other-window Like vm, but run in a different window. Fvm-mode Major mode for reading mail. This is VM 6.43. Commands: h - summarize folder contents C-t - toggle threads display n - go to next message p - go to previous message N - like `n' but ignores skip-variable settings P - like `p' but ignores skip-variable settings M-n - go to next unread message M-p - go to previous unread message RET - go to numbered message (uses prefix arg or prompts in minibuffer) TAB - go to last message seen ^ - go to parent of this message M-s - incremental search through the folder t - display hidden headers SPC - expose message body or scroll forward a page b - scroll backward a page < - go to beginning of current message > - go to end of current message d - delete message, prefix arg deletes messages forward C-d - delete message, prefix arg deletes messages backward u - undelete k - flag for deletion all messages with same subject as the current message r - reply (only to the sender of the message) R - reply with included text from the current message M-r - extract and resend bounced message f - followup (reply to all recipients of message) F - followup with included text from the current message z - forward the current message m - send a message B - resend the current message to another user. c - continue composing the most recent message you were composing @ - digestify and mail entire folder contents (the folder is not modified) * - burst a digest into individual messages, and append and assimilate these messages into the current folder. G - sort messages by various keys g - get any new mail that has arrived in the system mailbox (new mail is appended to the disk and buffer copies of the primary inbox.) v - visit another mail folder e - edit the current message j - discard cached information about the current message s - save current message in a folder (appends if folder already exists) w - write current message to a file without its headers (appends if exists) S - save entire folder to disk, does not expunge A - save unfiled messages to their vm-auto-folder-alist specified folders # - expunge deleted messages (without saving folder) q - quit VM, deleted messages are not expunged, folder is saved to disk if it is modified. new messages are changed to be flagged as just unread. x - exit VM with no change to the folder M N - use marks; the next vm command will affect only marked messages if it makes sense for the command to do so. These commands apply and remove marks to messages: M M - mark the current message M U - unmark the current message M m - mark all messages M u - unmark all messages M C - mark messages matched by a virtual folder selector M c - unmark messages matched by a virtual folder selector M T - mark thread tree rooted at the current message M t - unmark thread tree rooted at the current message M S - mark messages with the same subject as the current message M s - unmark messages with the same subject as the current message M A - mark messages with the same author as the current message M a - unmark messages with the same author as the current message M R - mark messages within the point/mark region in the summary M r - unmark messages within the point/mark region in the summary M V - toggle the marked-ness of all messages M ? - partial help for mark commands W S - save the current window configuration to a name W D - delete a window configuration W W - apply a configuration W ? - help for the window configuration commands V V - visit a virtual folder (must be defined in vm-virtual-folder-alist) V C - create a virtual folder composed of a subset of the current folder's messages. V A - create a virtual folder containing all the messages in the current folder with the same author as the current message. V S - create a virtual folder containing all the messages in the current folder with the same subject as the current message. V X - apply the selectors of a named virtual folder to the messages in the current folder and create a virtual folder containing the selected messages. V M - toggle whether this virtual folder's messages mirror the underlying real messages' attributes. V ? - help for virtual folder commands C-_ - undo, special undo that retracts the most recent changes in message attributes and labels. Expunges, message edits, and saves cannot be undone. C-x u is also bound to this command. a - set message attributes l a - add labels to message l d - delete labels from message L - reload your VM init file, ~/.vm % - change a folder to another type ? - help ! - run a shell command | - run a shell command with the current message as input M-C - view conditions under which you may redistribute VM M-W - view the details of VM's lack of a warranty Use M-x vm-submit-bug-report to submit a bug report. Variables: vm-arrived-message-hook vm-arrived-messages-hook vm-auto-center-summary vm-auto-decode-mime-messages vm-auto-displayed-mime-content-types vm-auto-folder-alist vm-auto-folder-case-fold-search vm-auto-get-new-mail vm-auto-next-message vm-berkeley-mail-compatibility vm-burst-digest-messages-inherit-labels vm-check-folder-types vm-circular-folders vm-confirm-new-folders vm-confirm-quit vm-convert-folder-types vm-crash-box vm-crash-box-suffix vm-default-folder-type vm-delete-after-archiving vm-delete-after-bursting vm-delete-after-saving vm-delete-empty-folders vm-digest-burst-type vm-digest-center-preamble vm-digest-preamble-format vm-digest-send-type vm-display-buffer-hook vm-display-using-mime vm-edit-message-hook vm-folder-directory vm-folder-read-only vm-follow-summary-cursor vm-forward-message-hook vm-forwarded-headers vm-forwarding-digest-type vm-forwarding-subject-format vm-frame-parameter-alist vm-frame-per-completion vm-frame-per-composition vm-frame-per-edit vm-frame-per-folder vm-frame-per-help vm-frame-per-summary vm-highlighted-header-face vm-highlighted-header-regexp vm-honor-page-delimiters vm-image-directory vm-index-file-suffix vm-in-reply-to-format vm-included-text-attribution-format vm-included-text-discard-header-regexp vm-included-text-headers vm-included-text-prefix vm-invisible-header-regexp vm-jump-to-new-messages vm-jump-to-unread-messages vm-keep-crash-boxes vm-keep-sent-messages vm-mail-check-interval vm-mail-header-from vm-mail-mode-hook vm-make-crash-box-name vm-make-spool-file-name vm-mime-7bit-composition-charset vm-mime-8bit-composition-charset vm-mime-8bit-text-transfer-encoding vm-mime-alternative-select-method vm-mime-attachment-auto-type-alist vm-mime-attachment-save-directory vm-mime-avoid-folding-content-type vm-mime-base64-decoder-program vm-mime-base64-decoder-switches vm-mime-base64-encoder-program vm-mime-base64-encoder-switches vm-mime-button-format-alist vm-mime-button-face vm-mime-charset-font-alist vm-mime-default-face-charsets vm-mime-digest-discard-header-regexp vm-mime-digest-headers vm-mime-display-function vm-mime-external-content-types-alist vm-mime-ignore-mime-version vm-mime-internal-content-types vm-mime-max-message-size vm-mode-hook vm-mosaic-program vm-mosaic-program-switches vm-move-after-deleting vm-move-after-killing vm-move-after-undeleting vm-move-messages-physically vm-mutable-frames vm-mutable-windows vm-netscape-program vm-netscape-program-switches vm-pop-auto-expunge-alist vm-pop-bytes-per-session vm-pop-expunge-after-retrieving vm-pop-max-message-size vm-pop-md5-program vm-pop-messages-per-session vm-popup-menu-on-mouse-3 vm-preferences-file vm-preview-lines vm-preview-read-messages vm-primary-inbox vm-quit-hook vm-recognize-pop-maildrops vm-reply-hook vm-reply-ignored-addresses vm-reply-ignored-reply-tos vm-reply-subject-prefix vm-resend-bounced-discard-header-regexp vm-resend-bounced-headers vm-resend-bounced-message-hook vm-resend-discard-header-regexp vm-resend-headers vm-resend-message-hook vm-retrieved-spooled-mail-hook vm-rfc1153-digest-discard-header-regexp vm-rfc1153-digest-headers vm-rfc934-digest-discard-header-regexp vm-rfc934-digest-headers vm-search-using-regexps vm-select-message-hook vm-select-new-message-hook vm-select-unread-message-hook vm-send-digest-hook vm-send-using-mime vm-skip-deleted-messages vm-skip-read-messages vm-spool-file-suffixes vm-spool-files vm-startup-with-summary vm-strip-reply-headers vm-summary-arrow vm-summary-format vm-summary-highlight-face vm-summary-mode-hook vm-summary-redo-hook vm-summary-show-threads vm-summary-thread-indent-level vm-tale-is-an-idiot vm-temp-file-directory vm-toolbar-pixmap-directory vm-trust-From_-with-Content-Length vm-undisplay-buffer-hook vm-unforwarded-header-regexp vm-url-browser vm-url-search-limit vm-use-menus vm-use-toolbar vm-virtual-folder-alist vm-virtual-mirror vm-visible-headers vm-visit-folder-hook vm-visit-when-saving vm-warp-mouse-to-new-frame vm-window-configuration-file Fvm-visit-folder Visit a mail file. VM will parse and present its messages to you in the usual way. First arg FOLDER specifies the mail file to visit. When this command is called interactively the file name is read from the minibuffer. Prefix arg or optional second arg READ-ONLY non-nil indicates that the folder should be considered read only. No attribute changes, messages additions or deletions will be allowed in the visited folder. Fvm-visit-folder-other-frame Like vm-visit-folder, but run in a newly created frame. Fvm-visit-folder-other-window Like vm-visit-folder, but run in a different window. Fvm-visit-virtual-folder-other-frame Like vm-visit-virtual-folder, but run in a newly created frame. Fvm-visit-virtual-folder-other-window Like vm-visit-virtual-folder, but run in a different window. Fvm-mail Send a mail message from within VM, or from without. Optional argument TO is a string that should contain a comma separated recipient list. Fvm-mail-other-frame Like vm-mail, but run in a newly created frame. Optional argument TO is a string that should contain a comma separated recipient list. Fvm-mail-other-window Like vm-mail, but run in a different window. Optional argument TO is a string that should contain a comma separated recipient list. Fvm-submit-bug-report Submit a bug report, with pertinent information to the VM bug list. Ftoggle-viper-mode Toggle Viper on/off. If Viper is enabled, turn it off. Otherwise, turn it on. Fviper-mode Turn on Viper emulation of Vi. Vvc-default-back-end *Back-end actually used by this interface; may be SCCS or RCS. The value is only computed when needed to avoid an expensive search. Vvc-handle-cvs *If non-nil, use VC for files managed with CVS. If it is nil, don't use VC for those files. Vvc-rcsdiff-knows-brief *Indicates whether rcsdiff understands the --brief option. The value is either `yes', `no', or nil. If it is nil, VC tries to use --brief and sets this variable to remember whether it worked. Vvc-path *List of extra directories to search for version control commands. Vvc-master-templates *Where to look for version-control master files. The first pair corresponding to a given back end is used as a template when creating new masters. Vvc-make-backup-files *If non-nil, backups of registered files are made as with other files. If nil (the default), files covered by version control don't get backups. Vvc-follow-symlinks *Indicates what to do if you visit a symbolic link to a file that is under version control. Editing such a file through the link bypasses the version control system, which is dangerous and probably not what you want. If this variable is t, VC follows the link and visits the real file, telling you about it in the echo area. If it is `ask', VC asks for confirmation whether it should follow the link. If nil, the link is visited and a warning displayed. Vvc-display-status *If non-nil, display revision number and lock status in modeline. Otherwise, not displayed. Vvc-consult-headers *If non-nil, identify work files by searching for version headers. Vvc-keep-workfiles *If non-nil, don't delete working files after registering changes. If the back-end is CVS, workfiles are always kept, regardless of the value of this flag. Vvc-mistrust-permissions *If non-nil, don't assume that permissions and ownership track version-control status. If nil, do rely on the permissions. See also variable `vc-consult-headers'. Vvc-file-prop-obarray Obarray for per-file properties. Fvc-name Return the master name of a file, nil if it is not registered. For CVS, the full name of CVS/Entries is returned. Fvc-backend Return the version-control type of a file, nil if it is not registered. Fvc-buffer-backend Return the version-control type of the visited file, or nil if none. Fvc-toggle-read-only Change read-only status of current buffer, perhaps via version control. If the buffer is visiting a file registered with version control, then check the file in or out. Otherwise, just change the read-only flag of the buffer. With prefix argument, ask for version number. Fvc-mode-line Set `vc-mode' to display type of version control for FILE. The value is set in the current buffer, which should be the buffer visiting FILE. Second optional arg LABEL is put in place of version control system name. Fvc-file-not-found-hook When file is not found, try to check it out from RCS or SCCS. Returns t if checkout was successful, nil otherwise. Vvc-menu Menubar entry for using the revision control system. Vvc-before-checkin-hook *Normal hook (list of functions) run before a file gets checked in. See `run-hooks'. Vvc-checkin-hook *Normal hook (List of functions) run after a checkin is done. See `run-hooks'. Fvc-find-binary Look for a command anywhere on the subprocess-command search path. Fvc-next-action Do the next logical checkin or checkout operation on the current file. If you call this from within a VC dired buffer with no files marked, it will operate on the file in the current line. If you call this from within a VC dired buffer, and one or more files are marked, it will accept a log message and then operate on each one. The log message will be used as a comment for any register or checkin operations, but ignored when doing checkouts. Attempted lock steals will raise an error. A prefix argument lets you specify the version number to use. For RCS and SCCS files: If the file is not already registered, this registers it for version control and then retrieves a writable, locked copy for editing. If the file is registered and not locked by anyone, this checks out a writable and locked file ready for editing. If the file is checked out and locked by the calling user, this first checks to see if the file has changed since checkout. If not, it performs a revert. If the file has been changed, this pops up a buffer for entry of a log message; when the message has been entered, it checks in the resulting changes along with the log message as change commentary. If the variable `vc-keep-workfiles' is non-nil (which is its default), a read-only copy of the changed file is left in place afterwards. If the file is registered and locked by someone else, you are given the option to steal the lock. For CVS files: If the file is not already registered, this registers it for version control. This does a "cvs add", but no "cvs commit". If the file is added but not committed, it is committed. If your working file is changed, but the repository file is unchanged, this pops up a buffer for entry of a log message; when the message has been entered, it checks in the resulting changes along with the logmessage as change commentary. A writable file is retained. If the repository file is changed, you are asked if you want to merge in the changes into your working copy. Fvc-register Register the current file into your version-control system. The default initial version number, taken to be `vc-default-init-version', can be overridden by giving a prefix arg. Fvc-checkout Retrieve a copy of the latest version of the given file. Fvc-diff Display diffs between file versions. Normally this compares the current file and buffer with the most recent checked in version of that file. This uses no arguments. With a prefix argument, it reads the file name to use and two version designators specifying which versions to compare. Fvc-version-diff For FILE, report diffs between two stored versions REL1 and REL2 of it. If FILE is a directory, generate diffs between versions for all registered files in or below it. Fvc-version-other-window Visit version REV of the current buffer in another window. If the current buffer is named `F', the version is named `F.~REV~'. If `F.~REV~' already exists, it is used instead of being re-created. Fvc-insert-headers Insert headers in a file for use with your version-control system. Headers desired are inserted at the start of the buffer, and are pulled from the variable `vc-header-alist'. Fvc-directory Show version-control status of the current directory and subdirectories. Normally it creates a Dired buffer that lists only the locked files in all these directories. With a prefix argument, it lists all files. Fvc-create-snapshot Make a snapshot called NAME. The snapshot is made from all registered files at or below the current directory. For each file, the version level of its latest version becomes part of the named configuration. Fvc-retrieve-snapshot Retrieve the snapshot called NAME. This function fails if any files are locked at or below the current directory Otherwise, all registered files are checked out (unlocked) at their version levels in the snapshot. Fvc-print-log List the change log of the current buffer in a window. Fvc-revert-buffer Revert the current buffer's file back to the latest checked-in version. This asks for confirmation if the buffer contents are not identical to that version. If the back-end is CVS, this will give you the most recent revision of the file on the branch you are editing. Fvc-cancel-version Get rid of most recently checked in version of this file. A prefix argument means do not revert the buffer afterwards. Fvc-rename-file Rename file OLD to NEW, and rename its master file likewise. Fvc-update-change-log Find change log file and add entries from recent RCS/CVS logs. Normally, find log entries for all registered files in the default directory using `rcs2log', which finds CVS logs preferentially. The mark is left at the end of the text prepended to the change log. With prefix arg of C-u, only find log entries for the current buffer's file. With any numeric prefix arg, find log entries for all currently visited files that are under version control. This puts all the entries in the log for the default directory, which may not be appropriate. From a program, any arguments are assumed to be filenames and are passed to the `rcs2log' script after massaging to be relative to the default directory. Vad-redefinition-action *Defines what to do with redefinitions during Advice de/activation. Redefinition occurs if a previously activated function that already has an original definition associated with it gets redefined and then de/activated. In such a case we can either accept the current definition as the new original definition, discard the current definition and replace it with the old original, or keep it and raise an error. The values `accept', `discard', `error' or `warn' govern what will be done. `warn' is just like `accept' but it additionally prints a warning message. All other values will be interpreted as `error'. Vad-default-compilation-action *Defines whether to compile advised definitions during activation. A value of `always' will result in unconditional compilation, `never' will always avoid compilation, `maybe' will compile if the byte-compiler is already loaded, and `like-original' will compile if the original definition of the advised function is compiled or a built-in function. Every other value will be interpreted as `maybe'. This variable will only be considered if the COMPILE argument of `ad-activate' was supplied as nil. Fad-add-advice Adds a piece of ADVICE to FUNCTION's list of advices in CLASS. If FUNCTION already has one or more pieces of advice of the specified CLASS then POSITION determines where the new piece will go. The value of POSITION can either be `first', `last' or a number where 0 corresponds to `first'. Numbers outside the range will be mapped to the closest extreme position. If there was already a piece of ADVICE with the same name, then the position argument will be ignored and the old advice will be overwritten with the new one. If the FUNCTION was not advised already, then its advice info will be initialized. Redefining a piece of advice whose name is part of the cache-id will clear the cache. Fdefadvice Defines a piece of advice for FUNCTION (a symbol). The syntax of `defadvice' is as follows: (defadvice FUNCTION (CLASS NAME [POSITION] [ARGLIST] FLAG...) [DOCSTRING] [INTERACTIVE-FORM] BODY... ) FUNCTION ::= Name of the function to be advised. CLASS ::= `before' | `around' | `after' | `activation' | `deactivation'. NAME ::= Non-nil symbol that names this piece of advice. POSITION ::= `first' | `last' | NUMBER. Optional, defaults to `first', see also `ad-add-advice'. ARGLIST ::= An optional argument list to be used for the advised function instead of the argument list of the original. The first one found in before/around/after-advices will be used. FLAG ::= `protect'|`disable'|`activate'|`compile'|`preactivate'|`freeze'. All flags can be specified with unambiguous initial substrings. DOCSTRING ::= Optional documentation for this piece of advice. INTERACTIVE-FORM ::= Optional interactive form to be used for the advised function. The first one found in before/around/after-advices will be used. BODY ::= Any s-expression. Semantics of the various flags: `protect': The piece of advice will be protected against non-local exits in any code that precedes it. If any around-advice of a function is protected then automatically all around-advices will be protected (the complete onion). `activate': All advice of FUNCTION will be activated immediately if FUNCTION has been properly defined prior to this application of `defadvice'. `compile': In conjunction with `activate' specifies that the resulting advised function should be compiled. `disable': The defined advice will be disabled, hence, it will not be used during activation until somebody enables it. `preactivate': Preactivates the advised FUNCTION at macro-expansion/compile time. This generates a compiled advised definition according to the current advice state that will be used during activation if appropriate. Only use this if the `defadvice' gets actually compiled. `freeze': Expands the `defadvice' into a redefining `defun/defmacro' according to this particular single advice. No other advice information will be saved. Frozen advices cannot be undone, they behave like a hard redefinition of the advised function. `freeze' implies `activate' and `preactivate'. The documentation of the advised function can be dumped onto the `DOC' file during preloading. Look at the file `advice.el' for comprehensive documentation. Vmake-annotation-hook *Function or functions to run immediately after creating an annotation. Vbefore-delete-annotation-hook *Function or functions to run immediately before deleting an annotation. Vafter-delete-annotation-hook *Function or functions to run immediately after deleting an annotation. Fmake-annotation Create a marginal annotation, displayed using GLYPH, at position POS. GLYPH may be either a glyph object or a string. Use layout policy LAYOUT and place the annotation in buffer BUFFER. If POS is nil, point is used. If LAYOUT is nil, `whitespace' is used. If BUFFER is nil, the current buffer is used. If WITH-EVENT is non-nil, then when an annotation is activated, the triggering event is passed as the second arg to the annotation function. If D-GLYPH is non-nil then it is used as the glyph that will be displayed when button1 is down. If RIGHTP is non-nil then the glyph will be displayed on the right side of the buffer instead of the left. Fdelete-annotation Remove ANNOTATION from its buffer. This does not modify the buffer text. Fannotationp T if OBJECT is an annotation. Fannotation-at Return the first annotation at POS in BUFFER. BUFFER defaults to the current buffer. POS defaults to point in BUFFER. Fannotations-in-region Return all annotations in BUFFER between START and END inclusively. Fannotations-at Return a list of all annotations at POS in BUFFER. If BUFFER is nil, the current buffer is used. If POS is nil, point is used. Fannotation-list Return a list of all annotations in BUFFER. If BUFFER is nil, the current buffer is used. Fall-annotations Return a list of all annotations in existence. Fgenerate-file-autoloads Insert at point a loaddefs autoload section for FILE. autoloads are generated for defuns and defmacros in FILE marked by `generate-autoload-cookie' (which see). If FILE is being visited in a buffer, the contents of the buffer are used. Fupdate-file-autoloads Update the autoloads for FILE in `generated-autoload-file' (which FILE might bind in its local variables). This functions refuses to update autoloads files. Fupdate-autoloads-here Update sections of the current buffer generated by `update-file-autoloads'. Fupdate-autoloads-from-directory Update `generated-autoload-file' with all the current autoloads from DIR. This runs `update-file-autoloads' on each .el file in DIR. Obsolete autoload entries for files that no longer exist are deleted. Fbatch-update-autoloads Update the autoloads for the files or directories on the command line. Runs `update-file-autoloads' on files and `update-directory-autoloads' on directories. Must be used only with -batch, and kills Emacs on completion. Each file will be processed even if an error occurred previously. For example, invoke `xemacs -batch -f batch-update-autoloads *.el'. The directory to which the auto-autoloads.el file must be the first parameter on the command line. Fbatch-update-directory Update the autoloads for the directory on the command line. Runs `update-file-autoloads' on each file in the given directory, must be used only with -batch and kills XEmacs on completion. Fbrowse-url-netscape Ask the Netscape WWW browser to load URL. Default to the URL around or before point. The strings in variable `browse-url-netscape-arguments' are also passed to Netscape. When called interactively, if variable `browse-url-new-window-p' is non-nil, load the document in a new Netscape window, otherwise use a random existing one. A non-nil interactive prefix argument reverses the effect of browse-url-new-window-p. When called non-interactively, optional second argument NEW-WINDOW is used instead of browse-url-new-window-p. Fbrowse-url-mosaic Ask the XMosaic WWW browser to load URL. Default to the URL around or before point. Fbrowse-url-grail Ask the Grail WWW browser to load URL. Default to the URL around or before point. Runs the program in the variable `browse-url-grail'. Fbrowse-url-iximosaic Ask the IXIMosaic WWW browser to load URL. Default to the URL around or before point. Fbrowse-url-w3 Ask the w3 WWW browser to load URL. Default to the URL around or before point. Fbrowse-url-lynx-xterm Ask the Lynx WWW browser to load URL. Default to the URL around or before point. A new Lynx process is run in an Xterm window. Fbrowse-url-lynx-emacs Ask the Lynx WWW browser to load URL. Default to the URL around or before point. Run a new Lynx process in an Emacs buffer. Fconfig-value-hash-table Returns hashtable of configuration parameters and their values. Fconfig-value Return the value of the configuration parameter CONFIG_SYMBOL. Fedit-toolbar Alter toolbar characteristics by editing a buffer representing the specified toolbar. Pops up a buffer containing a list of the toolbar matching TOOLBAR_NAME. Fedit-kbd-macro Edit a keyboard macro. At the prompt, type any key sequence which is bound to a keyboard macro. Or, type `C-x e' or RET to edit the last keyboard macro, `C-h l' to edit the last 100 keystrokes as a keyboard macro, or `M-x' to edit a macro by its command name. With a prefix argument, format the macro in a more concise way. Fedit-last-kbd-macro Edit the most recently defined keyboard macro. Fedit-named-kbd-macro Edit a keyboard macro which has been given a name by `name-last-kbd-macro'. Fread-kbd-macro Read the region as a keyboard macro definition. The region is interpreted as spelled-out keystrokes, e.g., "M-x abc RET". See documentation for `edmacro-mode' for details. The resulting macro is installed as the "current" keyboard macro. In Lisp, may also be called with a single STRING argument in which case the result is returned rather than being installed as the current macro. The result will be a vector of keystrokes. Fkbd Convert KEYS to the internal Emacs key representation. Fformat-kbd-macro Return the keyboard macro MACRO as a human-readable string. This string is suitable for passing to `read-kbd-macro'. Second argument VERBOSE means to put one command per line with comments. If VERBOSE is nil, put everything on one line. Feldoc-mode *Enable or disable eldoc mode. See documentation for the variable of the same name for more details. If called interactively with no prefix argument, toggle current condition of the mode. If called with a positive or negative prefix argument, enable or disable the mode, respectively. Fturn-on-eldoc-mode Unequivocally turn on eldoc-mode (see variable documentation). Felp-instrument-function Instrument FUNSYM for profiling. FUNSYM must be a symbol of a defined function. Felp-restore-function Restore an instrumented function to its original definition. Argument FUNSYM is the symbol of a defined function. Felp-instrument-list Instrument for profiling, all functions in `elp-function-list'. Use optional LIST if provided instead. Felp-instrument-package Instrument for profiling, all functions which start with PREFIX. For example, to instrument all ELP functions, do the following: \[elp-instrument-package] RET elp- RET Felp-results Display current profiling results. If `elp-reset-after-results' is non-nil, then current profiling information for all instrumented functions are reset after results are displayed. Felp-submit-bug-report Submit via mail, a bug report on elp. Vfacemenu-menu Facemenu top-level menu keymap. Vfacemenu-keymap Keymap for face-changing commands. `Facemenu-update' fills in the keymap according to the bindings requested in `facemenu-keybindings'. Ffacemenu-set-face Add FACE to the region or next character typed. It will be added to the top of the face list; any faces lower on the list that will not show through at all will be removed. Interactively, the face to be used is read with the minibuffer. If the region is active and there is no prefix argument, this command sets the region to the requested face. Otherwise, this command specifies the face for the next character inserted. Moving point or switching buffers before typing a character to insert cancels the specification. Ffacemenu-set-foreground Set the foreground color of the region or next character typed. The color is prompted for. A face named `fg:color' is used (or created). If the region is active, it will be set to the requested face. If it is inactive (even if mark-even-if-inactive is set) the next character that is typed (via `self-insert-command') will be set to the selected face. Moving point or switching buffers before typing a character cancels the request. Ffacemenu-set-background Set the background color of the region or next character typed. The color is prompted for. A face named `bg:color' is used (or created). If the region is active, it will be set to the requested face. If it is inactive (even if mark-even-if-inactive is set) the next character that is typed (via `self-insert-command') will be set to the selected face. Moving point or switching buffers before typing a character cancels the request. Ffacemenu-set-face-from-menu Set the face of the region or next character typed. This function is designed to be called from a menu; the face to use is the menu item's name. If the region is active and there is no prefix argument, this command sets the region to the requested face. Otherwise, this command specifies the face for the next character inserted. Moving point or switching buffers before typing a character to insert cancels the specification. Ffacemenu-set-invisible Make the region invisible. This sets the `invisible' text property; it can be undone with `facemenu-remove-special'. Ffacemenu-set-intangible Make the region intangible: disallow moving into it. This sets the `intangible' text property; it can be undone with `facemenu-remove-special'. Ffacemenu-set-read-only Make the region unmodifiable. This sets the `read-only' text property; it can be undone with `facemenu-remove-special'. Ffacemenu-remove-props Remove all text properties that facemenu added to region. Ffacemenu-remove-special Remove all the "special" text properties from the region. These special properties include `invisible', `intangible' and `read-only'. Flist-text-properties-at Pop up a buffer listing text-properties at LOCATION. Flist-colors-display Display names of defined colors, and show what they look like. If the optional argument LIST is non-nil, it should be a list of colors to display. Otherwise, this command computes a list of colors that the current display can handle. Ffloating-toolbar Popup a toolbar near the current mouse position. The toolbar instantiator used is taken from the 'floating-toolbar property of any extent under the mouse. If no such non-nil property exists for any extent under the mouse, then the value of the variable `floating-toolbar' is checked. If its value si nil, then no toolbar will be displayed. This command should be bound to a button press event. When called from a program, first arg EVENT should be the button press event. Optional second arg EXTENT-LOCAL-ONLY specifies that only extent local toolbars should be used; this means the `floating-toolbar' variable will not be consulted. Ffloating-toolbar-or-popup-mode-menu Like floating-toolbar, but if no toolbar is displayed run popup-mode-menu. Ffloating-toolbar-from-extent-or-popup-mode-menu Like floating-toolbar-or-popup-mode-menu, but search only for an extent local toolbar. Fenable-flow-control Toggle flow control handling. When handling is enabled, user can type C-s as C-\, and C-q as C-^. With arg, enable flow control mode if arg is positive, otherwise disable. Fenable-flow-control-on Enable flow control if using one of a specified set of terminal types. Use `(enable-flow-control-on "vt100" "h19")' to enable flow control on VT-100 and H19 terminals. When flow control is enabled, you must type C-\ to get the effect of a C-s, and type C-^ to get the effect of a C-q. This function has no effect unless the current device is a tty. The tty terminal type is determined from the TERM environment variable. Trailing hyphens and everything following is stripped, so a TERM value of "vt100-nam" is treated the same as "vt100". Fforms-mode Major mode to visit files in a field-structured manner using a form. Commands: Equivalent keys in read-only mode: TAB forms-next-field TAB \C-c TAB forms-next-field \C-c < forms-first-record < \C-c > forms-last-record > \C-c ? describe-mode ? \C-c \C-k forms-delete-record \C-c \C-q forms-toggle-read-only q \C-c \C-o forms-insert-record \C-c \C-l forms-jump-record l \C-c \C-n forms-next-record n \C-c \C-p forms-prev-record p \C-c \C-r forms-search-backward r \C-c \C-s forms-search-forward s \C-c \C-x forms-exit x Fforms-find-file Visit a file in Forms mode. Fforms-find-file-other-window Visit a file in Forms mode in other window. Fhide-copyleft-region Make the legal drivel at the front of this file invisible. Unhide it again with C-u \[hide-copyleft-region]. Funhide-copyleft-region If the legal nonsense at the top of this file is elided, make it visible again. Fhighlight-headers Highlight message headers between start and end. Faces used: message-headers the part before the colon message-header-contents the part after the colon message-highlighted-header-contents contents of "special" headers message-cited-text quoted text from other messages Variables used: highlight-headers-regexp what makes a "special" header highlight-headers-citation-regexp matches lines of quoted text highlight-headers-citation-header-regexp matches headers for quoted text If HACK-SIG is true,then we search backward from END for something that looks like the beginning of a signature block, and don't consider that a part of the message (this is because signatures are often incorrectly interpreted as cited text.) Vhippie-expand-try-functions-list The list of expansion functions tried in order by `hippie-expand'. To change the behavior of `hippie-expand', remove, change the order of, or insert functions in this list. Vhippie-expand-verbose *Non-nil makes `hippie-expand' output which function it is trying. Vhippie-expand-max-buffers *The maximum number of buffers (apart from the current) searched. If nil, all buffers are searched. Vhippie-expand-ignore-buffers *A list specifying which buffers not to search (if not current). Can contain both regexps matching buffer names (as strings) and major modes (as atoms) Fhippie-expand Try to expand text before point, using multiple methods. The expansion functions in `hippie-expand-try-functions-list' are tried in order, until a possible expansion is found. Repeated application of `hippie-expand' inserts successively possible expansions. With a positive numeric argument, jumps directly to the ARG next function in this list. With a negative argument or just \[universal-argument], undoes the expansion. Fmake-hippie-expand-function Construct a function similar to `hippie-expand'. Make it use the expansion functions in TRY-LIST. An optional second argument VERBOSE non-nil makes the function verbose. Fid-select-install Install the id-select mode as the default mode of operation. Fid-select-thing Mark the region selected by the syntax of the thing at point. If invoked repeatedly, selects bigger and bigger things. If `id-select-display-type' is non-nil, the type of selection is displayed in the minibuffer. Fid-select-thing-with-mouse Select a region based on the syntax of the character from a mouse click. If the click occurs at the same point as the last click, select the next larger syntactic structure. If `id-select-display-type' is non-nil, the type of selection is displayed in the minibuffer. Fid-select-goto-matching-tag If in a major mode listed in `id-select-markup-modes,' moves point to the start of the tag paired with the closest tag that point is within or precedes. Returns t if point is moved, else nil. Signals an error if no tag is found following point or if the closing tag does not have a `>' terminator character. Fid-select-and-copy-thing Copy the region surrounding the syntactical unit at point. Fid-select-and-kill-thing Kill the region surrounding the syntactical unit at point. Fid-select-double-click-hook Select a region based on the syntax of the character wherever the mouse is double-clicked. If the double-click occurs at the same point as the last double-click, select the next larger syntactic structure. If `id-select-display-type' is non-nil, the type of selection is displayed in the minibuffer. Funload-feature Unload the library that provided FEATURE, restoring all its autoloads. If the feature is required by any other loaded code, and optional FORCE is nil, raise an error. Fmail-extract-address-components Given an RFC-822 ADDRESS, extract full name and canonical address. Returns a list of the form (FULL-NAME CANONICAL-ADDRESS). If no name can be extracted, FULL-NAME will be nil. ADDRESS may be a string or a buffer. If it is a buffer, the visible (narrowed) portion of the buffer will be interpreted as the address. (This feature exists so that the clever caller might be able to avoid consing a string.) If ADDRESS contains more than one RFC-822 address, only the first is returned. Some day this function may be extended to extract multiple addresses, or perhaps return the position at which parsing stopped. Fwhat-domain Prompts for a mail domain, and prints the country it corresponds to in the minibuffer. Vmail-use-rfc822 *If non-nil, use a full, hairy RFC822 parser on mail addresses. Otherwise, (the default) use a smaller, somewhat faster, and often correct parser. Vrmail-dont-reply-to-names *A regexp specifying names to prune of reply to messages. A value of nil means exclude your own name only. Fmail-fetch-field Return the value of the header field FIELD-NAME. The buffer is expected to be narrowed to just the headers of the message. If second arg LAST is non-nil, use the last such field if there are several. If third arg ALL is non-nil, concatenate all such fields with commas between. Fread-passwd Prompts for a password in the minibuffer, and returns it as a string. If PROMPT may be a prompt string or an alist of elements '(prompt . default). If optional arg CONFIRM is true, then ask the user to type the password again to confirm that they typed it correctly. If optional arg DEFAULT is provided, then it is a string to insert as the default choice (it is not, of course, displayed.) If running under X, the keyboard will be grabbed (with XGrabKeyboard()) to reduce the possibility that eavesdropping is occuring. When reading a password, all keys self-insert, except for: \<read-passwd-map> \[read-passwd-erase-line] Erase the entire line. \[quoted-insert] Insert the next character literally. \[delete-backward-char] Delete the previous character. \[exit-minibuffer] Accept what you have typed. \[keyboard-quit] Abort the command. The returned value is always a newly-created string. No additional copies of the password remain after this function has returned. NOTE: unless great care is taken, the typed password will exist in plaintext form in the running image for an arbitrarily long time. Priveleged users may be able to extract it from memory. If emacs crashes, it may appear in the resultant core file. Some steps you can take to prevent the password from being copied around: - as soon as you are done with the returned string, destroy it with (fillarray string 0). The same goes for any default passwords or password histories. - do not copy the string, as with concat or substring - if you do, be sure to keep track of and destroy all copies. - do not insert the password into a buffer - if you do, be sure to overwrite the buffer text before killing it, as with the functions `passwd-erase-buffer' or `passwd-kill-buffer'. Note that deleting the text from the buffer does NOT necessarily remove the text from memory. - be careful of the undo history - if you insert the password into a buffer which has undo recording turned on, the password will be copied onto the undo list, and thus recoverable. - do not pass it as an argument to a shell command - anyone will be able to see it if they run `ps' at the right time. Note that the password will be temporarily recoverable with the `view-lossage' command. This data will not be overwritten until another hundred or so characters are typed. There's not currently a way around this. Fpp Output the pretty-printed representation of OBJECT, any Lisp object. Quoting characters are printed when needed to make output that `read' can handle, whenever this is possible. Output stream is STREAM, or value of `standard-output' (which see). Fpp-eval-expression Evaluate EXPRESSION and pretty-print value into a new display buffer. If the pretty-printed value fits on one line, the message line is used instead. Value is also consed on to front of variable values 's value. Fpp-eval-last-sexp Run `pp-eval-expression' on sexp before point (which see). With argument, pretty-print output into current buffer. Ignores leading comment characters. Fpp-function Pretty print the function definition of SYMBOL in a separate buffer Fpp-variable Pretty print the variable value of SYMBOL in a separate buffer Fpp-plist Pretty print the property list of SYMBOL in a separate buffer Fmacroexpand-sexp Macro expand the sexpression following point. Pretty print expansion in a temporary buffer. With prefix argument, replace the original sexpression by its expansion in the current buffer. Fmacroexpand-all-sexp Macro expand recursively the sexpression following point. Pretty print expansion in a temporary buffer. With prefix argument, replace the original sexpression by its expansion in the current buffer. Fprettyexpand-sexp Macro expand the sexpression following point. Pretty print expansion in a temporary buffer. With prefix argument, replace the original sexpression by its expansion in the current buffer. However, calls to macros specified in the variable `pp-shadow-expansion-list' are not expanded, in order to make the code look nicer. Fprettyexpand-all-sexp Macro expand recursively the sexpression following point. Pretty print expansion in a temporary buffer. With prefix argument, replace the original sexpression by its expansion in the current buffer. However, calls to macros specified in the variable `pp-shadow-expansion-list' are not expanded, in order to make the code look nicer. Fregexp-opt Return a regexp to match a string in STRINGS. Each string should be unique in STRINGS and should not contain any regexps, quoted or not. If optional PAREN is non-nil, ensure that the returned regexp is enclosed by at least one regexp match grouping construct. If optional NON-SHY is non nil, the inner groupings will use "\\( \\)" grouping, rather than the default "\\(?: \\)" 'shy', or non-match-capturing groups. The returned regexp is typically more efficient than the equivalent regexp: (let ((open-paren (if PAREN "\\(" "")) (close-paren (if PAREN "\\)" ""))) (concat open-paren (mapconcat 'regexp-quote STRINGS "\\|") close-paren)) but typically contains more regexp grouping constructs. Use `regexp-opt-depth' to count them. Fregexp-opt-depth Return the depth of REGEXP. This means the number of regexp grouping constructs (parenthesised expressions) in REGEXP, not counting the "\\(?: \\)" non-match-capturing groups unless COUNT-SHY-GROUPS-TOO is non-nil. See `regexp-opt'. Fringp Returns t if X is a ring; nil otherwise. Fmake-ring Make a ring that can contain SIZE elements. Fsavehist-load Load the minibuffer histories from `savehist-file'. Unless NO-HOOK is specified, the function will also add the save function to `kill-emacs-hook', thus ensuring that the minibuffer contents will be saved before leaving Emacs. This function should be normally used from your Emacs init file. Since it removes your current minibuffer histories, it is unwise to call it at any other time. Fsavehist-save Save the histories from `savehist-history-variables' to `savehist-file'. A variable will be saved if it is bound and non-nil. Flist-load-path-shadows Display a list of Emacs Lisp files that shadow other files. This function lists potential load-path problems. Directories in the `load-path' variable are searched, in order, for Emacs Lisp files. When a previously encountered file name is found again, a message is displayed indicating that the later file is "hidden" by the earlier. For example, suppose `load-path' is set to ("/usr/gnu/emacs/site-lisp" "/usr/gnu/emacs/share/emacs/19.30/lisp") and that each of these directories contains a file called XXX.el. Then XXX.el in the site-lisp directory is referred to by all of: (require 'XXX), (autoload .... "XXX"), (load-library "XXX") etc. The first XXX.el file prevents emacs from seeing the second (unless the second is loaded explicitly via load-file). When not intended, such shadowings can be the source of subtle problems. For example, the above situation may have arisen because the XXX package was not distributed with versions of emacs prior to 19.30. An emacs maintainer downloaded XXX from elsewhere and installed it. Later, XXX was updated and included in the emacs distribution. Unless the emacs maintainer checks for this, the new version of XXX will be hidden behind the old (which may no longer work with the new emacs version). This function performs these checks and flags all possible shadowings. Because a .el file may exist without a corresponding .elc (or vice-versa), these suffixes are essentially ignored. A file XXX.elc in an early directory (that does not contain XXX.el) is considered to shadow a later file XXX.el, and vice-versa. When run interactively, the shadowings (if any) are displayed in a buffer called `*Shadows*'. Shadowings are located by calling the (non-interactive) companion function, `find-emacs-lisp-shadows'. Vskeleton-filter Function for transforming a skeleton proxy's aliases' variable value. Fdefine-skeleton Define a user-configurable COMMAND that enters a statement skeleton. DOCUMENTATION is that of the command, while the variable of the same name, which contains the skeleton, has a documentation to that effect. INTERACTOR and ELEMENT ... are as defined under `skeleton-insert'. Fskeleton-proxy-new Insert skeleton defined by variable of same name (see `skeleton-insert'). Prefix ARG allows wrapping around words or regions (see `skeleton-insert'). If no ARG was given, but the region is visible, ARG defaults to -1 depending on `skeleton-autowrap'. An ARG of M-0 will prevent this just for once. This command can also be an abbrev expansion (3rd and 4th columns in \[edit-abbrevs] buffer: "" command-name). When called as a function, optional first argument STR may also be a string which will be the value of `str' whereas the skeleton's interactor is then ignored. Fskeleton-proxy Insert skeleton defined by variable of same name (see `skeleton-insert'). Prefix ARG allows wrapping around words or regions (see `skeleton-insert'). If no ARG was given, but the region is visible, ARG defaults to -1 depending on `skeleton-autowrap'. An ARG of M-0 will prevent this just for once. This command can also be an abbrev expansion (3rd and 4th columns in \[edit-abbrevs] buffer: "" command-name). When called as a function, optional first argument STR may also be a string which will be the value of `str' whereas the skeleton's interactor is then ignored. Fskeleton-insert Insert the complex statement skeleton SKELETON describes very concisely. With optional third REGIONS wrap first interesting point (`_') in skeleton around next REGIONS words, if REGIONS is positive. If REGIONS is negative, wrap REGIONS preceding interregions into first REGIONS interesting positions (successive `_'s) in skeleton. An interregion is the stretch of text between two contiguous marked points. If you marked A B C [] (where [] is the cursor) in alphabetical order, the 3 interregions are simply the last 3 regions. But if you marked B A [] C, the interregions are B-A, A-[], []-C. Optional fourth STR is the value for the variable `str' within the skeleton. When this is non-`nil' the interactor gets ignored, and this should be a valid skeleton element. SKELETON is made up as (INTERACTOR ELEMENT ...). INTERACTOR may be nil if not needed, a prompt-string or an expression for complex read functions. If ELEMENT is a string or a character it gets inserted (see also `skeleton-transformation'). Other possibilities are: \n go to next line and indent according to mode _ interesting point, interregion here, point after termination > indent line (or interregion if > _) according to major mode & do next ELEMENT if previous moved point | do next ELEMENT if previous didn't move point -num delete num preceding characters (see `skeleton-untabify') resume: skipped, continue here if quit is signaled nil skipped Further elements can be defined via `skeleton-further-elements'. ELEMENT may itself be a SKELETON with an INTERACTOR. The user is prompted repeatedly for different inputs. The SKELETON is processed as often as the user enters a non-empty string. \[keyboard-quit] terminates skeleton insertion, but continues after `resume:' and positions at `_' if any. If INTERACTOR in such a subskeleton is a prompt-string which contains a ".. %s .." it is formatted with `skeleton-subprompt'. Such an INTERACTOR may also a list of strings with the subskeleton being repeated once for each string. Quoted Lisp expressions are evaluated evaluated for their side-effect. Other Lisp expressions are evaluated and the value treated as above. Note that expressions may not return `t' since this implies an endless loop. Modes can define other symbols by locally setting them to any valid skeleton element. The following local variables are available: str first time: read a string according to INTERACTOR then: insert previously read string once more help help-form during interaction with the user or `nil' input initial input (string or cons with index) while reading str v1, v2 local variables for memorizing anything you want When done with skeleton, but before going back to `_'-point call `skeleton-end-hook' if that is non-`nil'. Fskeleton-pair-insert-maybe Insert the character you type ARG times. With no ARG, if `skeleton-pair' is non-nil, pairing can occur. If the region is visible the pair is wrapped around it depending on `skeleton-autowrap'. Else, if `skeleton-pair-on-word' is non-nil or we are not before or inside a word, and if `skeleton-pair-filter' returns nil, pairing is performed. If a match is found in `skeleton-pair-alist', that is inserted, else the defaults are used. These are (), [], {}, <> and `' for the symmetrical ones, and the same character twice for the others. Fspeedbar-frame-mode Enable or disable speedbar. Positive ARG means turn on, negative turn off. nil means toggle. Once the speedbar frame is activated, a buffer in `speedbar-mode' will be displayed. Currently, only one speedbar is supported at a time. Fspeedbar-get-focus Change frame focus to or from the speedbar frame. If the selected frame is not speedbar, then speedbar frame is selected. If the speedbar frame is active, then select the attached frame. Frestore-initial-toolbar Restores the default toolbar defined by initial-toolbar-spec. Ftoolbar-add-item Add a toolbar item ITEM at the first location of the toolbar specifier. Optionally, can specify an INDEX position to insert the ITEM. The default is to use default-toolbar, but a different specifier can by specified with TOOLBAR-SPEC. Ftoolbar-kill-item-pos Remove a toolbar item ITEM at the first location of the toolbar specifier. Optionally, can specify an INDEX position where to remove the ITEM. The default is to use default-toolbar, but a different specifier can by specified with TOOLBAR-SPEC. Ftoolbar-kill-item Remove a toolbar item ITEM at the first location of the toolbar specifier. Optionally, can specify an ITEM to remove. The ITEM must be in form of a vector. The default is to use default-toolbar, but a different specifier can by specified with TOOLBAR-SPEC. Ftq-create Create and return a transaction queue communicating with PROCESS. PROCESS should be a subprocess capable of sending and receiving streams of bytes. It may be a local process, or it may be connected to a tcp server on another machine. Vtrace-buffer *Trace output will by default go to that buffer. Ftrace-function Traces FUNCTION with trace output going to BUFFER. For every call of FUNCTION Lisp-style trace messages that display argument and return values will be inserted into BUFFER. This function generates the trace advice for FUNCTION and activates it together with any other advice there might be!! The trace BUFFER will popup whenever FUNCTION is called. Do not use this to trace functions that switch buffers or do any other display oriented stuff, use `trace-function-background' instead. Ftrace-function-background Traces FUNCTION with trace output going quietly to BUFFER. For every call of FUNCTION Lisp-style trace messages that display argument and return values will be inserted into BUFFER. This function generates the trace advice for FUNCTION and activates it together with any other advice there might be!! Trace output will quietly go to BUFFER without changing the window or buffer configuration at all. Fxbm-button-create Returns a list of XBM image instantiators for a button displaying TEXT. The list is of the form (UP DOWN DISABLED) where UP, DOWN, and DISABLED are the up, down and disabled image instantiators for the button. BORDER-THICKNESS specifies how many pixels should be used for the borders on the edges of the buttons. It should be a positive integer, or 0 to mean no border. Fxpm-button-create Returns a list of XPM image instantiators for a button displaying TEXT. The list is of the form (UP DOWN DISABLED) where UP, DOWN, and DISABLED are the up, down and disabled image instantiators for the button. SHADOW-THICKNESS specifies how many pixels should be used for the shadows on the edges of the buttons. It should be a positive integer, or 0 to mean no shadows on the edges. FG-COLOR is the color used to display the text. It should be a string. BG-COLOR is the background color the text will be displayed upon. It should be a string. Fmime/editor-mode MIME minor mode for editing the tagged MIME message. In this mode, basically, the message is composed in the tagged MIME format. The message tag looks like: --[[text/plain; charset=ISO-2022-JP][7bit]] The tag specifies the MIME content type, subtype, optional parameters and transfer encoding of the message following the tag. Messages without any tag are treated as `text/plain' by default. Charset and transfer encoding are automatically defined unless explicitly specified. Binary messages such as audio and image are usually hidden. The messages in the tagged MIME format are automatically translated into a MIME compliant message when exiting this mode. Available charsets depend on Emacs version being used. The following lists the available charsets of each emacs. EMACS 18: US-ASCII is only available. NEmacs: US-ASCII and ISO-2022-JP are available. EMACS 19: US-ASCII and ISO-8859-1 (or other charset) are available. XEmacs 19: US-ASCII and ISO-8859-1 (or other charset) are available. Mule: US-ASCII, ISO-8859-* (except for ISO-8859-5), KOI8-R, ISO-2022-JP, ISO-2022-JP-2, ISO-2022-KR, BIG5 and ISO-2022-INT-1 are available. ISO-2022-JP-2 and ISO-2022-INT-1 charsets used in mule is expected to be used to represent multilingual text in intermixed manner. Any languages that has no registered charset are represented as either ISO-2022-JP-2 or ISO-2022-INT-1 in mule. If you want to use non-ISO-8859-1 charset in EMACS 19 or XEmacs 19, please set variable `default-mime-charset'. This variable must be symbol of which name is a MIME charset. If you want to add more charsets in mule, please set variable `charsets-mime-charset-alist'. This variable must be alist of which key is list of leading-char/charset and value is symbol of MIME charset. (leading-char is a term of MULE 1.* and 2.*. charset is a term of XEmacs/mule, mule merged EMACS and MULE 3.*) If name of coding-system is different as MIME charset, please set variable `mime-charset-coding-system-alist'. This variable must be alist of which key is MIME charset and value is coding-system. Following commands are available in addition to major mode commands: [make single part] \[mime-editor/insert-text] insert a text message. \[mime-editor/insert-file] insert a (binary) file. \[mime-editor/insert-external] insert a reference to external body. \[mime-editor/insert-voice] insert a voice message. \[mime-editor/insert-message] insert a mail or news message. \[mime-editor/insert-mail] insert a mail message. \[mime-editor/insert-signature] insert a signature file at end. \[mime-editor/insert-key] insert PGP public key. \[mime-editor/insert-tag] insert a new MIME tag. [make enclosure (maybe multipart)] \[mime-editor/enclose-alternative-region] enclose as multipart/alternative. \[mime-editor/enclose-parallel-region] enclose as multipart/parallel. \[mime-editor/enclose-mixed-region] enclose as multipart/mixed. \[mime-editor/enclose-digest-region] enclose as multipart/digest. \[mime-editor/enclose-signed-region] enclose as PGP signed. \[mime-editor/enclose-encrypted-region] enclose as PGP encrypted. \[mime-editor/enclose-quote-region] enclose as verbose mode (to avoid to expand tags) [other commands] \[mime-editor/set-transfer-level-7bit] set transfer-level as 7. \[mime-editor/set-transfer-level-8bit] set transfer-level as 8. \[mime-editor/set-split] set message splitting mode. \[mime-editor/set-sign] set PGP-sign mode. \[mime-editor/set-encrypt] set PGP-encryption mode. \[mime-editor/preview-message] preview editing MIME message. \[mime-editor/exit] exit and translate into a MIME compliant message. \[mime-editor/help] show this help. \[mime-editor/maybe-translate] exit and translate if in MIME mode, then split. Additional commands are available in some major modes: C-c C-c exit, translate and run the original command. C-c C-s exit, translate and run the original command. The following is a message example written in the tagged MIME format. TABs at the beginning of the line are not a part of the message: This is a conventional plain text. It should be translated into text/plain. --[[text/plain]] This is also a plain text. But, it is explicitly specified as is. --[[text/plain; charset=ISO-8859-1]] This is also a plain text. But charset is specified as iso-8859-1. íHola! Buenos dφas. ┐C≤mo estß usted? --[[text/enriched]] This is a <bold>enriched text</bold>. --[[image/gif][base64]]...image encoded in base64 here... --[[audio/basic][base64]]...audio encoded in base64 here... User customizable variables (not documented all of them): mime-prefix Specifies a key prefix for MIME minor mode commands. mime-ignore-preceding-spaces Preceding white spaces in a message body are ignored if non-nil. mime-ignore-trailing-spaces Trailing white spaces in a message body are ignored if non-nil. mime-auto-hide-body Hide a non-textual body message encoded in base64 after insertion if non-nil. mime-editor/transfer-level A number of network transfer level. It should be bigger than 7. If you are in 8bit-through environment, please set 8. mime-editor/voice-recorder Specifies a function to record a voice message and encode it. The function `mime-editor/voice-recorder-for-sun' is for Sun SparcStations. mime/editor-mode-hook Turning on MIME mode calls the value of mime/editor-mode-hook, if it is non-nil. mime-editor/translate-hook The value of mime-editor/translate-hook is called just before translating the tagged MIME format into a MIME compliant message if it is non-nil. If the hook call the function mime-editor/insert-signature, the signature file will be inserted automatically. mime-editor/exit-hook Turning off MIME mode calls the value of mime-editor/exit-hook, if it is non-nil. Fview-charset Display character table of CHARSET. Fview-charset-by-menu Display character table of CHARSET by pop-up menu. Fskk-isearch-mode-setup hook function called when skk isearch begin. Fskk-isearch-mode-cleanup Hook function called when skk isearch is done. Fskk-tutorial SKK $(B%A%e!<%H%j% Fvip-mode Turn on VIP emulation of VI. Vrmail-dont-reply-to-names *A regexp specifying names to prune of reply to messages. A value of nil means exclude your own name only. Vrmail-default-dont-reply-to-names A regular expression specifying part of the value of the default value of the variable `rmail-dont-reply-to-names', for when the user does not set `rmail-dont-reply-to-names' explicitly. (The other part of the default value is the user's name.) It is useful to set this variable in the site customization file. Vrmail-delete-after-output *Non-nil means automatically delete a message that is copied to a file. Vrmail-primary-inbox-list *List of files which are inboxes for user's primary mail file `~/RMAIL'. `nil' means the default, which is ("/usr/spool/mail/$USER") (the name varies depending on the operating system, and the value of the environment variable MAIL overrides it). Vrmail-mail-new-frame *Non-nil means Rmail makes a new frame for composing outgoing mail. Vrmail-retry-setup-hook Hook that `rmail-retry-failure' uses in place of `mail-setup-hook'. Frmail Read and edit incoming mail. Moves messages into file named by `rmail-file-name' (a babyl format file) and edits that file in RMAIL Mode. Type \[describe-mode] once editing that file, for a list of RMAIL commands. May be called with filename as argument; then performs rmail editing on that file, but does not copy any new mail into the file. Frmail-mode Rmail Mode is used by \<rmail-mode-map>\[rmail] for editing Rmail files. All normal editing commands are turned off. Instead, these commands are available: \[rmail-beginning-of-message] Move point to front of this message (same as \[beginning-of-buffer]). \[scroll-up] Scroll to next screen of this message. \[scroll-down] Scroll to previous screen of this message. \[rmail-next-undeleted-message] Move to Next non-deleted message. \[rmail-previous-undeleted-message] Move to Previous non-deleted message. \[rmail-next-message] Move to Next message whether deleted or not. \[rmail-previous-message] Move to Previous message whether deleted or not. \[rmail-first-message] Move to the first message in Rmail file. \[rmail-last-message] Move to the last message in Rmail file. \[rmail-show-message] Jump to message specified by numeric position in file. \[rmail-search] Search for string and show message it is found in. \[rmail-delete-forward] Delete this message, move to next nondeleted. \[rmail-delete-backward] Delete this message, move to previous nondeleted. \[rmail-undelete-previous-message] Undelete message. Tries current message, then earlier messages till a deleted message is found. \[rmail-edit-current-message] Edit the current message. \[rmail-cease-edit] to return to Rmail. \[rmail-expunge] Expunge deleted messages. \[rmail-expunge-and-save] Expunge and save the file. \[rmail-quit] Quit Rmail: expunge, save, then switch to another buffer. \[save-buffer] Save without expunging. \[rmail-get-new-mail] Move new mail from system spool directory into this file. \[rmail-mail] Mail a message (same as \[mail-other-window]). \[rmail-continue] Continue composing outgoing message started before. \[rmail-reply] Reply to this message. Like \[rmail-mail] but initializes some fields. \[rmail-retry-failure] Send this message again. Used on a mailer failure message. \[rmail-forward] Forward this message to another user. \[rmail-output-to-rmail-file] Output this message to an Rmail file (append it). \[rmail-output] Output this message to a Unix-format mail file (append it). \[rmail-input] Input Rmail file. Run Rmail on that file. \[rmail-add-label] Add label to message. It will be displayed in the mode line. \[rmail-kill-label] Kill label. Remove a label from current message. \[rmail-next-labeled-message] Move to Next message with specified label (label defaults to last one specified). Standard labels: filed, unseen, answered, forwarded, deleted. Any other label is present only if you add it with \[rmail-add-label]. \[rmail-previous-labeled-message] Move to Previous message with specified label \[rmail-summary] Show headers buffer, with a one line summary of each message. \[rmail-summary-by-labels] Summarize only messages with particular label(s). \[rmail-summary-by-recipients] Summarize only messages with particular recipient(s). \[rmail-summary-by-regexp] Summarize only messages with particular regexp(s). \[rmail-summary-by-topic] Summarize only messages with subject line regexp(s). \[rmail-toggle-header] Toggle display of complete header. Frmail-input Run Rmail on file FILENAME. Fbatch-unrmail Convert Rmail files to mailbox files. Specify the input Rmail file names as command line arguments. For each Rmail file, the corresponding output file name is made by adding `.mail' at the end. For example, invoke `emacs -batch -f batch-unrmail RMAIL'. Funrmail Convert Rmail file FILE to mailbox-format file TO-FILE. Fhtml-mode HTML mode. Fhtml3-mode HTML3 mode. Fsgml-mode Major mode for editing SGML.\<sgml-mode-map> Makes > display the matching <. Makes / display matching /. Use \[sgml-validate] to validate your document with an SGML parser. You can find information with: \[sgml-show-context] Show the nesting of elements at cursor position. \[sgml-list-valid-tags] Show the tags valid at cursor position. Insert tags with completio